aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/ath79/dts/qca9558_mikrotik_routerboard-922uags-5hpacd.dts48
-rw-r--r--target/linux/ath79/image/mikrotik.mk3
-rw-r--r--target/linux/ath79/mikrotik/base-files/etc/board.d/02_network1
-rw-r--r--target/linux/ath79/mikrotik/config-default1
4 files changed, 51 insertions, 2 deletions
diff --git a/target/linux/ath79/dts/qca9558_mikrotik_routerboard-922uags-5hpacd.dts b/target/linux/ath79/dts/qca9558_mikrotik_routerboard-922uags-5hpacd.dts
index 8ad834fe61..36979bbd33 100644
--- a/target/linux/ath79/dts/qca9558_mikrotik_routerboard-922uags-5hpacd.dts
+++ b/target/linux/ath79/dts/qca9558_mikrotik_routerboard-922uags-5hpacd.dts
@@ -23,6 +23,27 @@
gpios = <&gpio 13 GPIO_ACTIVE_HIGH>;
};
};
+
+ i2c: i2c {
+ compatible = "i2c-gpio";
+
+ sda-gpios = <&gpio 18 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
+ scl-gpios = <&gpio 19 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
+ i2c-gpio,delay-us = <5>;
+ i2c-gpio,timeout-ms = <1>;
+ };
+
+ sfp1: sfp {
+ compatible = "sff,sfp";
+
+ i2c-bus = <&i2c>;
+ maximum-power-milliwatt = <1000>;
+ los-gpios = <&gpio 21 GPIO_ACTIVE_HIGH>;
+ mod-def0-gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
+ tx-disable-gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
+ // Toggling GPIO16 actually enables/disables the transmitter,
+ // but the SFP driver does not seem to be using it.
+ };
};
&pcie0 {
@@ -55,3 +76,30 @@
&usb_phy1 {
status = "okay";
};
+
+&mdio1 {
+ status = "okay";
+
+ phy_sfp: ethernet-phy@0 {
+ reg = <0>;
+ phy-mode = "sgmii";
+ sfp = <&sfp1>;
+ };
+};
+
+&eth1 {
+ status = "okay";
+
+ phy-handle = <&phy_sfp>;
+ pll-data = <0x03000000 0x00000101 0x00001616>;
+ qca955x-sgmii-fixup;
+
+ gmac-config {
+ device = <&gmac>;
+ };
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+};
diff --git a/target/linux/ath79/image/mikrotik.mk b/target/linux/ath79/image/mikrotik.mk
index b7d745bc77..74f8603b5a 100644
--- a/target/linux/ath79/image/mikrotik.mk
+++ b/target/linux/ath79/image/mikrotik.mk
@@ -22,7 +22,8 @@ define Device/mikrotik_routerboard-922uags-5hpacd
$(Device/mikrotik_nand)
SOC := qca9558
DEVICE_MODEL := RouterBOARD 922UAGS-5HPacD
- DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
+ DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2 \
+ kmod-i2c-gpio kmod-sfp
SUPPORTED_DEVICES += rb-922uags-5hpacd
endef
TARGET_DEVICES += mikrotik_routerboard-922uags-5hpacd
diff --git a/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network b/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network
index d229523ad5..835e2caf93 100644
--- a/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/mikrotik/base-files/etc/board.d/02_network
@@ -15,7 +15,6 @@ ath79_setup_interfaces()
"0@eth1" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
;;
mikrotik,routerboard-921gs-5hpacd-15s|\
- mikrotik,routerboard-922uags-5hpacd|\
mikrotik,routerboard-lhg-2nd|\
mikrotik,routerboard-sxt-5nd-r2|\
mikrotik,routerboard-wap-g-5hact2hnd|\
diff --git a/target/linux/ath79/mikrotik/config-default b/target/linux/ath79/mikrotik/config-default
index c70ae75b01..b89ef5f8ed 100644
--- a/target/linux/ath79/mikrotik/config-default
+++ b/target/linux/ath79/mikrotik/config-default
@@ -24,6 +24,7 @@ CONFIG_MTD_UBI=y
CONFIG_MTD_UBI_BLOCK=y
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_LIMIT=20
+CONFIG_NET_DSA=y
CONFIG_NET_SWITCHDEV=y
CONFIG_PCI_AR71XX=y
CONFIG_PHY_AR7100_USB=y