From b182f2e0b4d44bbc373adefc649a20a28fc5e262 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Fri, 16 Feb 2024 21:27:05 -0800 Subject: [PATCH] ath79: meraki_mr1[26]: userspace cal to nvmem Userspace handling is deprecated. Signed-off-by: Rosen Penev Link: https://github.com/openwrt/openwrt/pull/21002 Signed-off-by: Hauke Mehrtens --- target/linux/ath79/dts/ar7161_meraki_mr16.dts | 30 +++++++++++++------ target/linux/ath79/dts/ar7242_meraki_mr12.dts | 17 ++++++++--- .../etc/hotplug.d/firmware/10-ath9k-eeprom | 23 -------------- 3 files changed, 34 insertions(+), 36 deletions(-) diff --git a/target/linux/ath79/dts/ar7161_meraki_mr16.dts b/target/linux/ath79/dts/ar7161_meraki_mr16.dts index 0353a558f9..25f29b8323 100644 --- a/target/linux/ath79/dts/ar7161_meraki_mr16.dts +++ b/target/linux/ath79/dts/ar7161_meraki_mr16.dts @@ -74,22 +74,20 @@ &pcie0 { status = "okay"; - ath9k0: wifi@11,0 { /* 2.4 GHz */ + wifi@11,0 { /* 2.4 GHz */ compatible = "pci168c,0029"; reg = <0x8800 0 0 0 0>; - qca,no-eeprom; - nvmem-cells = <&macaddr_config_66 1>; - nvmem-cell-names = "mac-address"; + nvmem-cells = <&macaddr_config_66 1>, <&cal_art_11000>; + nvmem-cell-names = "mac-address", "calibration"; #gpio-cells = <2>; gpio-controller; }; - ath9k1: wifi@12,0 { /* 5 GHz */ + wifi@12,0 { /* 5 GHz */ compatible = "pci168c,0029"; reg = <0x9000 0 0 0 0>; - qca,no-eeprom; - nvmem-cells = <&macaddr_config_66 2>; - nvmem-cell-names = "mac-address"; + nvmem-cells = <&macaddr_config_66 2>, <&cal_art_15000>; + nvmem-cell-names = "mac-address", "calibration"; #gpio-cells = <2>; gpio-controller; }; @@ -139,7 +137,7 @@ read-only; }; - config: partition@80000 { + partition@80000 { label = "config"; reg = <0x80000 0x20000>; read-only; @@ -167,6 +165,20 @@ label = "art"; reg = <0xfe0000 0x20000>; read-only; + + nvmem-layout { + compatible = "fixed-layout"; + #address-cells = <1>; + #size-cells = <1>; + + cal_art_11000: calibration@11000 { + reg = <0x11000 0xeb8>; + }; + + cal_art_15000: calibration@15000 { + reg = <0x15000 0xeb8>; + }; + }; }; }; }; diff --git a/target/linux/ath79/dts/ar7242_meraki_mr12.dts b/target/linux/ath79/dts/ar7242_meraki_mr12.dts index 2ab6f8aaf3..39fd41e7a8 100644 --- a/target/linux/ath79/dts/ar7242_meraki_mr12.dts +++ b/target/linux/ath79/dts/ar7242_meraki_mr12.dts @@ -77,9 +77,8 @@ wifi@0,0 { compatible = "pci168c,002a"; reg = <0x0000 0 0 0 0>; - qca,no-eeprom; - nvmem-cells = <&macaddr_config_66 1>; - nvmem-cell-names = "mac-address"; + nvmem-cells = <&macaddr_config_66 1>, <&cal_art_11000>; + nvmem-cell-names = "mac-address", "calibration"; }; }; @@ -139,7 +138,7 @@ read-only; }; - config: partition@80000 { + partition@80000 { label = "config"; reg = <0x80000 0x20000>; read-only; @@ -167,6 +166,16 @@ label = "art"; reg = <0xfe0000 0x20000>; read-only; + + nvmem-layout { + compatible = "fixed-layout"; + #address-cells = <1>; + #size-cells = <1>; + + cal_art_11000: calibration@11000 { + reg = <0x11000 0xeb8>; + }; + }; }; }; }; diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom index eb9aec1361..a8443cf163 100644 --- a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom +++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom @@ -25,9 +25,6 @@ case "$FIRMWARE" in avm,fritz300e) caldata_extract_reverse "urloader" 0x1541 0x440 ;; - meraki,mr12) - caldata_extract "art" 0x11000 0xeb8 - ;; wd,mynet-wifi-rangeextender) caldata_extract "art" 0x1000 0x440 ath9k_patch_mac $(nvram get wl0_hwaddr) @@ -37,24 +34,4 @@ case "$FIRMWARE" in ;; esac ;; -"ath9k-eeprom-pci-0000:00:11.0.bin") - case $board in - meraki,mr16) - caldata_extract "art" 0x11000 0xeb8 - ;; - *) - caldata_die "board $board is not supported yet" - ;; - esac - ;; -"ath9k-eeprom-pci-0000:00:12.0.bin") - case $board in - meraki,mr16) - caldata_extract "art" 0x15000 0xeb8 - ;; - *) - caldata_die "board $board is not supported yet" - ;; - esac - ;; esac