From 53ac6ee552baca52f3f18fc95b793c03e1bf9581 Mon Sep 17 00:00:00 2001 From: Piotr Dymacz Date: Tue, 22 Feb 2022 16:29:27 +0100 Subject: [PATCH] ath79: utilize ath9k 'nvmem-cells' on ALFA Network boards Drop custom 'mtd-cal-data' and switch to 'nvmem-cells' based solution for fetching radio calibration data and its MAC address. Signed-off-by: Piotr Dymacz --- .../ath79/dts/ar9331_alfa-network_ap121f.dtsi | 31 +++++++++------ .../ath79/dts/ar9344_alfa-network_n5q.dts | 39 +++++++++++-------- .../ath79/dts/qca9531_alfa-network_r36a.dtsi | 9 ++++- 3 files changed, 49 insertions(+), 30 deletions(-) diff --git a/target/linux/ath79/dts/ar9331_alfa-network_ap121f.dtsi b/target/linux/ath79/dts/ar9331_alfa-network_ap121f.dtsi index e12205c310e7..2be7cdb05d59 100644 --- a/target/linux/ath79/dts/ar9331_alfa-network_ap121f.dtsi +++ b/target/linux/ath79/dts/ar9331_alfa-network_ap121f.dtsi @@ -96,10 +96,26 @@ reg = <0x030000 0x010000>; }; - art: partition@40000 { + partition@40000 { label = "art"; reg = <0x040000 0x010000>; read-only; + + compatible = "nvmem-cells"; + #address-cells = <1>; + #size-cells = <1>; + + cal_art_1000: cal@1000 { + reg = <0x1000 0x440>; + }; + + macaddr_art_0: macaddr@0 { + reg = <0x0 0x6>; + }; + + macaddr_art_1002: macaddr@1002 { + reg = <0x1002 0x6>; + }; }; partition@50000 { @@ -122,15 +138,6 @@ &wmac { status = "okay"; - mtd-cal-data = <&art 0x1000>; -}; - -&art { - compatible = "nvmem-cells"; - #address-cells = <1>; - #size-cells = <1>; - - macaddr_art_0: macaddr@0 { - reg = <0x0 0x6>; - }; + nvmem-cells = <&cal_art_1000>, <&macaddr_art_1002>; + nvmem-cell-names = "calibration", "mac-address"; }; diff --git a/target/linux/ath79/dts/ar9344_alfa-network_n5q.dts b/target/linux/ath79/dts/ar9344_alfa-network_n5q.dts index c54270a78dc2..ca762c3bca40 100644 --- a/target/linux/ath79/dts/ar9344_alfa-network_n5q.dts +++ b/target/linux/ath79/dts/ar9344_alfa-network_n5q.dts @@ -131,10 +131,30 @@ reg = <0x060000 0x010000>; }; - art: partition@70000 { + partition@70000 { label = "art"; reg = <0x070000 0x010000>; read-only; + + compatible = "nvmem-cells"; + #address-cells = <1>; + #size-cells = <1>; + + cal_art_1000: cal@1000 { + reg = <0x1000 0x440>; + }; + + macaddr_art_0: macaddr@0 { + reg = <0x0 0x6>; + }; + + macaddr_art_6: macaddr@6 { + reg = <0x6 0x6>; + }; + + macaddr_art_1002: macaddr@1002 { + reg = <0x1002 0x6>; + }; }; partition@80000 { @@ -149,19 +169,6 @@ &wmac { status = "okay"; - mtd-cal-data = <&art 0x1000>; -}; - -&art { - compatible = "nvmem-cells"; - #address-cells = <1>; - #size-cells = <1>; - - macaddr_art_0: macaddr@0 { - reg = <0x0 0x6>; - }; - - macaddr_art_6: macaddr@6 { - reg = <0x6 0x6>; - }; + nvmem-cells = <&cal_art_1000>, <&macaddr_art_1002>; + nvmem-cell-names = "calibration", "mac-address"; }; diff --git a/target/linux/ath79/dts/qca9531_alfa-network_r36a.dtsi b/target/linux/ath79/dts/qca9531_alfa-network_r36a.dtsi index 7e8960548038..9704e69211b4 100644 --- a/target/linux/ath79/dts/qca9531_alfa-network_r36a.dtsi +++ b/target/linux/ath79/dts/qca9531_alfa-network_r36a.dtsi @@ -82,7 +82,7 @@ reg = <0x060000 0x010000>; }; - art: partition@70000 { + partition@70000 { label = "art"; reg = <0x070000 0x010000>; read-only; @@ -91,6 +91,10 @@ #address-cells = <1>; #size-cells = <1>; + cal_art_1000: cal@1000 { + reg = <0x1000 0x440>; + }; + macaddr_art_1002: macaddr@1002 { reg = <0x1002 0x6>; }; @@ -124,5 +128,6 @@ &wmac { status = "okay"; - mtd-cal-data = <&art 0x1000>; + nvmem-cells = <&cal_art_1000>, <&macaddr_art_1002>; + nvmem-cell-names = "calibration", "mac-address"; }; -- 2.30.2