]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
ipq806x: use nvmem for wifi mac 16229/head
authorRosen Penev <rosenp@gmail.com>
Thu, 22 Aug 2024 17:47:03 +0000 (10:47 -0700)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 16 Mar 2025 21:19:46 +0000 (22:19 +0100)
Userspace handling is deprecated.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16229
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
target/linux/ipq806x/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
target/linux/ipq806x/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
target/linux/ipq806x/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq8064-eax500.dtsi
target/linux/ipq806x/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq8064-unifi-ac-hd.dts

index 4c5019cf5bd247d0e9f1f5a546c0e5b02b39e8ae..4e9d536bbcca724534ddda16c20b6b8e8619f992 100644 (file)
@@ -43,11 +43,6 @@ case "$FIRMWARE" in
        asrock,g10)
                caldata_extract "0:art" 0x1000 0x2f20
                ;;
-       linksys,ea7500-v1 |\
-       linksys,ea8500)
-               caldata_extract "art" 0x1000 0x2f20
-               ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii devinfo hw_mac_addr) 1)
-               ;;
        meraki,mr42)
                CI_UBIPART=art
                caldata_extract_ubi "ART" 0x1000 0x2f20
@@ -78,11 +73,6 @@ case "$FIRMWARE" in
        edgecore,ecw5410)
                caldata_extract "0:art" 0x1000 0x2f20
                ;;
-       linksys,ea7500-v1 |\
-       linksys,ea8500)
-               caldata_extract "art" 0x5000 0x2f20
-               ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii devinfo hw_mac_addr) 2)
-               ;;
        meraki,mr42 |\
        meraki,mr52)
                CI_UBIPART=art
index ef5fc344a6f3d111b8a7aba82e359615e66c15a5..ee641fc24cee3cde146a66929b001c109c87bb10 100644 (file)
@@ -12,14 +12,14 @@ PHYNBR=${DEVPATH##*/phy}
 board=$(board_name)
 
 case "$board" in
-       ubnt,unifi-ac-hd)
-               macaddr_add $(mtd_get_mac_binary EEPROM 0x6) $(($PHYNBR + 1)) > /sys${DEVPATH}/macaddress
-               ;;
        extreme,ap3935)
                echo "##### PHYNBR=$PHYNBR DEVPATH=$DEVPATH"
                [ "$PHYNBR" = "0" ] && echo $(mtd_get_mac_ascii CFG1 RADIOADDR0) > /sys${DEVPATH}/macaddress
                [ "$PHYNBR" = "1" ] && echo $(mtd_get_mac_ascii CFG1 RADIOADDR1) > /sys${DEVPATH}/macaddress
                ;;
+       linksys,ea7500-v1 |\
+       linksys,ea8500)
+               macaddr_add $(mtd_get_mac_ascii devinfo hw_mac_addr) $(($PHYNBR + 1)) > /sys${DEVPATH}/macaddress
 esac
 
 OPATH=${DEVPATH##/devices/platform/}
index c66a2b973e1dbf8cbb7832b748c25e4a2f28499f..59f6dc8698e9be1167d160ac7891dc84b5efb7b7 100644 (file)
        status = "okay";
 
        max-link-speed = <1>;
+
+       wifi@0,0 {
+               compatible = "qcom,ath10k";
+               reg = <0x0000 0 0 0 0>;
+               nvmem-cells = <&precal_art_1000>;
+               nvmem-cell-names = "pre-calibration";
+       };
 };
 
 &pcie1 {
        status = "okay";
+
+       wifi@0,0 {
+               compatible = "qcom,ath10k";
+               reg = <0x0000 0 0 0 0>;
+               nvmem-cells = <&precal_art_5000>;
+               nvmem-cell-names = "pre-calibration";
+       };
 };
 
 &nand {
                                label = "art";
                                reg = <0x0c80000 0x0140000>;
                                read-only;
+
+                               nvmem-layout {
+                                       compatible = "fixed-layout";
+                                       #address-cells = <1>;
+                                       #size-cells = <1>;
+
+                                       precal_art_1000: pre-calibration@1000 {
+                                               reg = <0x1000 0x2f20>;
+                                       };
+
+                                       precal_art_5000: pre-calibration@5000 {
+                                               reg = <0x5000 0x2f20>;
+                                       };
+                               };
                        };
 
                        partition@dc0000 {
index fac41897d4fcb2ebc5efa6c1771377839b97af99..c415b5901ad39c94fd8c82b42072b7572e1eeef0 100644 (file)
                                                };
 
                                                macaddr_eeprom_6: macaddr@6 {
+                                                       compatible = "mac-base";
                                                        reg = <0x6 0x6>;
+                                                       #nvmem-cell-cells = <1>;
                                                };
                                        };
                                };
        phy-mode = "sgmii";
        qcom,id = <1>;
 
-       nvmem-cells = <&macaddr_eeprom_6>;
+       nvmem-cells = <&macaddr_eeprom_6 0>;
        nvmem-cell-names = "mac-address";
 };
 
 
 &pcie0 {
        status = "okay";
+
+       wifi@0,0 {
+               compatible = "qcom,ath10k";
+               reg = <0x0000 0 0 0 0>;
+               nvmem-cells = <&macaddr_eeprom_6 1>;
+               nvmem-cell-names = "mac-address";
+       };
 };
 
 &pcie1 {
        status = "okay";
+
+       wifi@0,0 {
+               compatible = "qcom,ath10k";
+               reg = <0x0000 0 0 0 0>;
+               nvmem-cells = <&macaddr_eeprom_6 2>;
+               nvmem-cell-names = "mac-address";
+       };
 };
 
 &tcsr {