[PATCH] ipq40xx: Convert Google Wifi to DSA, reenable
Brian Norris
computersforpeace at gmail.com
Sat Oct 22 13:00:38 PDT 2022
Undo parts of these:
116feb4a1cad ipq40xx: remove non-converted network configs
db19efee9512 ipq40xx: disable boards not converted to DSA
Reintroduce the DT paths /soc/edma at c080000/gmac{0,1}, because the stock
bootloader has memorized them (instead of following aliases); then plug
the MAC address back in via 05_set_iface_mac_ipq40xx.sh, since the
'local-mac-address' property is no longer in the correct node.
Cc: David Bauer <mail at david-bauer.net>
Cc: Robert Marko <robert.marko at sartura.hr>
Signed-off-by: Brian Norris <computersforpeace at gmail.com>
---
.../ipq40xx/base-files/etc/board.d/02_network | 5 +++
.../arch/arm/boot/dts/qcom-ipq4019-wifi.dts | 42 +++++++++++++++++++
target/linux/ipq40xx/image/chromium.mk | 3 +-
3 files changed, 48 insertions(+), 2 deletions(-)
diff --git a/target/linux/ipq40xx/base-files/etc/board.d/02_network b/target/linux/ipq40xx/base-files/etc/board.d/02_network
index 36f1f7c24a55..0cfcac513c7a 100644
--- a/target/linux/ipq40xx/base-files/etc/board.d/02_network
+++ b/target/linux/ipq40xx/base-files/etc/board.d/02_network
@@ -31,6 +31,7 @@ ipq40xx_setup_interfaces()
cilab,meshpoint-one|\
edgecore,ecw5211|\
glinet,gl-b2200|\
+ google,wifi|\
luma,wrtq-329acn|\
mikrotik,cap-ac|\
netgear,wac510|\
@@ -114,6 +115,10 @@ ipq40xx_setup_macs()
ezviz,cs-w3-wd1200g-eup)
label_mac=$(mtd_get_mac_binary "ART" 0x6)
;;
+ google,wifi)
+ wan_mac=$(get_mac_label)
+ lan_mac=$(macaddr_add "$wan_mac" 1)
+ ;;
linksys,ea6350v3|\
linksys,ea8300 |\
linksys,mr8300)
diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-wifi.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-wifi.dts
index 643449f8e4c8..65f593330558 100644
--- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-wifi.dts
+++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-wifi.dts
@@ -13,6 +13,10 @@
model = "Google WiFi (Gale)";
compatible = "google,wifi", "google,gale-v2", "qcom,ipq4019";
+ aliases {
+ label-mac-device = &gmac0;
+ };
+
chosen {
/*
* rootwait: in case we're booting from slow/async USB storage.
@@ -25,6 +29,26 @@
device_type = "memory";
reg = <0x80000000 0x20000000>; /* 512MB */
};
+
+ soc {
+ edma at c080000 {
+ /*
+ * Factory bootloader (depthcharge) will fail to boot
+ * if this exact path (soc/edma at c080000/gmac0) doesn't
+ * exist.
+ */
+ gmac0: gmac0 {
+ };
+
+ /*
+ * Factory bootloader (depthcharge) will fail to boot
+ * if this exact path (soc/edma at c080000/gmac1) doesn't
+ * exist.
+ */
+ gmac1 {
+ };
+ };
+ };
};
&tlmm {
@@ -325,6 +349,10 @@
status = "okay";
};
+&gmac {
+ status = "okay";
+};
+
&mdio {
status = "okay";
pinctrl-0 = <&mdio_pins>;
@@ -344,6 +372,20 @@
non-removable;
};
+&switch {
+ status = "okay";
+};
+
+&swport4 {
+ status = "okay";
+
+ label = "lan";
+};
+
+&swport5 {
+ status = "okay";
+};
+
&usb2 {
status = "okay";
};
diff --git a/target/linux/ipq40xx/image/chromium.mk b/target/linux/ipq40xx/image/chromium.mk
index 7410794fb4c7..2abd2df02ae4 100644
--- a/target/linux/ipq40xx/image/chromium.mk
+++ b/target/linux/ipq40xx/image/chromium.mk
@@ -33,5 +33,4 @@ define Device/google_wifi
DEVICE_PACKAGES := partx-utils mkf2fs e2fsprogs \
kmod-fs-ext4 kmod-fs-f2fs kmod-google-firmware
endef
-# Missing DSA Setup
-#TARGET_DEVICES += google_wifi
+TARGET_DEVICES += google_wifi
--
2.35.1
More information about the openwrt-devel
mailing list