ipq40xx: Convert openmesh,a42 to DSA
authorSven Eckelmann <sven@narfation.org>
Mon, 24 Oct 2022 16:55:44 +0000 (18:55 +0200)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 12 Nov 2022 17:15:55 +0000 (18:15 +0100)
* ethernet1:

  - physical port label "Ethernet 1"
  - can be used to power the device
  - its mac address is printed on the device label

* ethernet2:

  - physical port label "Ethernet 2"

Both ports are not marked by there role (because the vendor firmware
automatically detects roles) but the "Ethernet 1" port was used in the past
for "WAN" functionality in OpenWrt.

Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
target/linux/ipq40xx/base-files/etc/board.d/02_network
target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh
target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-a42.dts
target/linux/ipq40xx/image/generic.mk

index 80b7b02e8a51b6a8b12f9879ff6035d49eac3ccf..6c6d04a9236bb4094b69cfeb492e2dc79d0e8285 100644 (file)
@@ -73,6 +73,9 @@ ipq40xx_setup_interfaces()
        netgear,srs60)
                ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
                ;;
+       openmesh,a42)
+               ucidef_set_interfaces_lan_wan "ethernet2" "ethernet1"
+               ;;
        zte,mf286d)
                ucidef_set_interfaces_lan_wan "lan2 lan3 lan4" "wan"
                ;;
@@ -159,6 +162,9 @@ ipq40xx_setup_macs()
        pakedge,wr-1)
                wan_mac=$(macaddr_add $(get_mac_label) 1)
                ;;
+       openmesh,a42)
+               label_mac="$(mtd_get_mac_binary "0:ART" 0x0)"
+               ;;
        esac
 
        [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
index ddfef1ab2d42b8d858efff17e50625742f840e49..4ae410313120a175b3ec6271835506acd26e1e10 100644 (file)
@@ -29,6 +29,10 @@ preinit_set_mac_address() {
                ip link set dev lan1 address $(macaddr_add "$base_mac" 1)
                ip link set dev eth0 address $(macaddr_setbit "$base_mac" 7)
                ;;
+       openmesh,a42)
+               ip link set dev ethernet1 address $(mtd_get_mac_binary "0:ART" 0x0)
+               ip link set dev ethernet2 address $(mtd_get_mac_binary "0:ART" 0x6)
+               ;;
        mikrotik,wap-ac)
                base_mac=$(cat /sys/firmware/mikrotik/hard_config/mac_base)
                ip link set dev sw-eth1 address "$base_mac"
index 2236edf80bf86cc598022e18edc74adb95eb3601..89f5183045d37986c348743f11851cf0363fdce0 100644 (file)
                        status = "okay";
                };
 
-               mdio@90000 {
-                       status = "okay";
-               };
-
                tcsr@194b000 {
                        /* select hostmode */
                        compatible = "qcom,tcsr";
        status = "okay";
 };
 
+&mdio {
+       status = "okay";
+};
+
+&gmac {
+       status = "okay";
+};
+
+&switch {
+       status = "okay";
+};
+
+&swport4 {
+       status = "okay";
+       label = "ethernet2";
+};
+
+&swport5 {
+       status = "okay";
+       label = "ethernet1";
+};
+
 &wifi0 {
        status = "okay";
        qcom,ath10k-calibration-variant = "OM-A42";
index 9fb34a7871b1cf1d7681314baa56cf957d90486d..14a2745719c02a7a505e9a290507503e8285573e 100644 (file)
@@ -888,8 +888,7 @@ define Device/openmesh_a42
        IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A42
        IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
 endef
-# Missing DSA Setup
-#TARGET_DEVICES += openmesh_a42
+TARGET_DEVICES += openmesh_a42
 
 define Device/openmesh_a62
        $(call Device/FitImageLzma)