From abf28b79c817c319d16f447d28bdaeb6839d5467 Mon Sep 17 00:00:00 2001 From: Sander Vanheule Date: Sat, 11 Jun 2022 12:42:14 +0200 Subject: [PATCH] ath79: D-Link DAP-2660 A1: convert ath10k caldata to nvmem Add the PCIe node for the ath10k radio to the devicetree, and refer to the art partition for the calibration data using nvmem-cells. MAC address assignment is moved to '10_fix_wifi_mac', so the device can then be removed from the caldata extraction script '11-ath10k-caldata'. Cc: Sebastian Schaper Tested-by: Sebastian Schaper Signed-off-by: Sander Vanheule --- .../linux/ath79/dts/qca9557_dlink_dap-2660-a1.dts | 14 ++++++++++++++ .../etc/hotplug.d/firmware/11-ath10k-caldata | 1 - .../etc/hotplug.d/ieee80211/10_fix_wifi_mac | 2 +- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/target/linux/ath79/dts/qca9557_dlink_dap-2660-a1.dts b/target/linux/ath79/dts/qca9557_dlink_dap-2660-a1.dts index 0390079426..93e2fc0d97 100644 --- a/target/linux/ath79/dts/qca9557_dlink_dap-2660-a1.dts +++ b/target/linux/ath79/dts/qca9557_dlink_dap-2660-a1.dts @@ -79,4 +79,18 @@ &pcie0 { status = "okay"; + + wifi@0,0 { + compatible = "qcom,ath10k"; + reg = <0 0 0 0 0>; + + nvmem-cells = <&cal_ath10k>; + nvmem-cell-names = "calibration"; + }; +}; + +&art { + cal_ath10k: calibration@5000 { + reg = <0x5000 0x844>; + }; }; diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata index 1ce3f00c7e..079b9ab150 100644 --- a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata +++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata @@ -67,7 +67,6 @@ case "$FIRMWARE" in caldata_extract "art" 0x5000 0x844 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) -1) ;; - dlink,dap-2660-a1|\ dlink,dap-2695-a1|\ dlink,dap-3662-a1) caldata_extract "art" 0x5000 0x844 diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac b/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac index d5a2471a99..fbd5344a1e 100644 --- a/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac +++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac @@ -26,12 +26,12 @@ case "$board" in dlink,dap-3320-a1) mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress ;; - dlink,dap-2660-a1|\ dlink,dap-2695-a1|\ dlink,dap-3662-a1) [ "$PHYNBR" -eq 1 ] && \ mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress ;; + dlink,dap-2660-a1|\ dlink,dap-2680-a1) [ "$PHYNBR" -eq 0 ] && \ mtd_get_mac_ascii bdcfg "wlanmac_a" > /sys${DEVPATH}/macaddress