ath79: sitecom,wlrx100: use nvmem
authorRosen Penev <[email protected]>
Sat, 15 Jun 2024 22:13:07 +0000 (15:13 -0700)
committerHauke Mehrtens <[email protected]>
Tue, 2 Dec 2025 23:55:26 +0000 (00:55 +0100)
Userspace handling is deprecated.

Also use led-sources for simplicity.

Signed-off-by: Rosen Penev <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20508
Signed-off-by: Hauke Mehrtens <[email protected]>
target/linux/ath79/dts/ar1022_sitecom_wlr-7100.dts
target/linux/ath79/dts/qca9558_sitecom_wlr-8100.dts
target/linux/ath79/generic/base-files/etc/board.d/02_network
target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac

index 67d954dd14dc2441404fcc90eafa438933441348..7903f3d73f1b550af7ee8e0748402e02ca41d4bb 100644 (file)
@@ -11,6 +11,7 @@
        compatible = "sitecom,wlr-7100", "qca,ar9344";
 
        aliases {
+               label-mac-device = &eth0;
                led-boot = &led_power;
                led-failsafe = &led_power;
                led-running = &led_power;
                        gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
                        default-state = "on";
                };
-
-               wlan2g {
-                       label = "blue:wlan2g";
-                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
-                       linux,default-trigger = "phy1tpt";
-               };
        };
 };
 
@@ -64,6 +59,9 @@
        phy-mode = "rgmii";
        phy-handle = <&phy0>;
 
+       nvmem-cells = <&macaddr_uboot_ethaddr 0>;
+       nvmem-cell-names = "mac-address";
+
        gmac-config {
                device = <&gmac>;
                rgmii-gmac0 = <1>;
@@ -95,8 +93,8 @@
        wifi@0,0 {
                compatible = "qcom,ath10k";
                reg = <0x0000 0 0 0 0>;
-               nvmem-cells = <&cal_art_5000>;
-               nvmem-cell-names = "calibration";
+               nvmem-cells = <&cal_art_5000>, <&macaddr_uboot_ethaddr 1>;
+               nvmem-cell-names = "calibration", "mac-address";
        };
 };
 
                                label = "u-boot-env";
                                reg = <0x030000 0x010000>;
                                read-only;
+
+                               nvmem-layout {
+                                       compatible = "u-boot,env";
+
+                                       macaddr_uboot_ethaddr: ethaddr {
+                                               #nvmem-cell-cells = <1>;
+                                       };
+                               };
                        };
 
                        partition@40000 {
                                        #address-cells = <1>;
                                        #size-cells = <1>;
 
+                                       cal_art_1000: calibration@1000 {
+                                               reg = <0x1000 0x440>;
+                                       };
+
                                        cal_art_5000: calibration@5000 {
                                                reg = <0x5000 0x844>;
                                        };
 &wmac {
        status = "okay";
 
-       qca,no-eeprom;
+       nvmem-cells = <&cal_art_1000>, <&macaddr_uboot_ethaddr 0>;
+       nvmem-cell-names = "calibration", "mac-address";
+
+       led {
+               led-sources = <14>;
+               led-active-low;
+       };
 };
index 1c8d88c20d6db9a108e2f5627e8bbd207d133340..9978a3d7d1405c8d2f41bbecc87a3807150ca55e 100644 (file)
@@ -11,6 +11,7 @@
        compatible = "sitecom,wlr-8100", "qca,qca9558";
 
        aliases {
+               label-mac-device = &eth0;
                led-boot = &led_status_amber;
                led-failsafe = &led_status_amber;
                led-running = &led_status_amber;
                        gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
                };
 
-               wifi2g {
-                       label = "blue:wifi2g";
-                       gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
-                       linux,default-trigger = "phy1tpt";
-               };
-
                wifi5g {
                        label = "blue:wifi5g";
                        gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
                                label = "u-boot-env";
                                reg = <0x030000 0x010000>;
                                read-only;
+
+                               nvmem-layout {
+                                       compatible = "u-boot,env";
+
+                                       macaddr_uboot_ethaddr: ethaddr {
+                                               #nvmem-cell-cells = <1>;
+                                       };
+                               };
                        };
 
                        partition@40000 {
                                        #address-cells = <1>;
                                        #size-cells = <1>;
 
+                                       cal_art_1000: calibration@1000 {
+                                               reg = <0x1000 0x440>;
+                                       };
+
                                        cal_art_5000: calibration@5000 {
                                                reg = <0x5000 0x844>;
                                        };
        wifi@0,0 {
                compatible = "qcom,ath10k";
                reg = <0 0 0 0 0>;
-               nvmem-cells = <&cal_art_5000>;
-               nvmem-cell-names = "calibration";
+               nvmem-cells = <&cal_art_5000>, <&macaddr_uboot_ethaddr 1>;
+               nvmem-cell-names = "calibration", "mac-address";
        };
 };
 
        phy-handle = <&phy0>;
        pll-data = <0xa6000000 0x00000101 0x00001616>;
 
+       nvmem-cells = <&macaddr_uboot_ethaddr 0>;
+       nvmem-cell-names = "mac-address";
+
        gmac-config {
                device = <&gmac>;
                rgmii-enabled = <1>;
 
 &wmac {
        status = "okay";
-       qca,no-eeprom;
+
+       nvmem-cells = <&cal_art_1000>, <&macaddr_uboot_ethaddr 0>;
+       nvmem-cell-names = "calibration", "mac-address";
+
+       led {
+               led-sources = <19>;
+               led-active-low;
+       };
 };
index fcb56bd777e3b3b8ba21ea1a85670aacadd8c4b3..1d5ddc605c433e04313e364ba04d050b06b6ea3f 100644 (file)
@@ -808,9 +808,7 @@ ath79_setup_macs()
                ;;
        sitecom,wlr-7100|\
        sitecom,wlr-8100)
-               lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
                wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
-               label_mac=$lan_mac
                ;;
        tplink,archer-a7-v5|\
        tplink,archer-a9-v6|\
index b3181372be8658fadca19f911efe66d8591dbdd1..ed2b846433160cf348b9c4d1a9a7f3da9726a7db 100644 (file)
@@ -15,11 +15,6 @@ case "$FIRMWARE" in
        avm,fritzdvbc)
                caldata_extract_reverse "urlader" 0x1541 0x440
                ;;
-       sitecom,wlr-7100|\
-       sitecom,wlr-8100)
-               caldata_extract "art" 0x1000 0x440
-               ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env ethaddr)
-               ;;
        moxa,awk-1137c)
                caldata_extract "art" 0x1000 0x440
                ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env mac_addr)
index c71ba436b44e623aed918cfd397680d7c642ca62..e3336174d52e419cbc79407b11a99bb0dc37fc35 100644 (file)
@@ -80,11 +80,6 @@ case "$board" in
                # which would allow to patch the macaddress
                macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" $PHYNBR > /sys${DEVPATH}/macaddress
                ;;
-       sitecom,wlr-7100|\
-       sitecom,wlr-8100)
-               [ "$PHYNBR" -eq 0 ] && \
-                       macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" 1 > /sys${DEVPATH}/macaddress
-               ;;
        dlink,dir-842-c1|\
        dlink,dir-842-c2|\
        dlink,dir-842-c3|\