aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorINAGAKI Hiroshi <musashino.open@gmail.com>2022-10-19 23:57:34 +0900
committerHauke Mehrtens <hauke@hauke-m.de>2022-10-19 22:58:12 +0200
commit961d4230f4a5ebf79ff350d4ee4593a21f8bb4ec (patch)
treea0c4bac85ea1b9777c64f0277845c225e78e2aa0
parent2e1ffc341276ed31e69af14a3d7f5c6d8e5f069c (diff)
downloadupstream-961d4230f4a5ebf79ff350d4ee4593a21f8bb4ec.tar.gz
upstream-961d4230f4a5ebf79ff350d4ee4593a21f8bb4ec.tar.bz2
upstream-961d4230f4a5ebf79ff350d4ee4593a21f8bb4ec.zip
ath79: use NVMEM for wlan caldata on ELECOM devices
Use NVMEM "calibration" implementation for ath9k/ath10k(-ct) on ELECOM WRC-300GHBK2-I and WRC-1750GHBK2-I/C instead of mtd-cal-data property or user-space script. Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
-rw-r--r--target/linux/ath79/dts/qca9563_elecom_wrc-1750ghbk2-i.dts36
-rw-r--r--target/linux/ath79/dts/qca9563_elecom_wrc-300ghbk2-i.dts25
-rw-r--r--target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata3
3 files changed, 39 insertions, 25 deletions
diff --git a/target/linux/ath79/dts/qca9563_elecom_wrc-1750ghbk2-i.dts b/target/linux/ath79/dts/qca9563_elecom_wrc-1750ghbk2-i.dts
index 510b577d19..f7358891b0 100644
--- a/target/linux/ath79/dts/qca9563_elecom_wrc-1750ghbk2-i.dts
+++ b/target/linux/ath79/dts/qca9563_elecom_wrc-1750ghbk2-i.dts
@@ -44,11 +44,34 @@
label = "art";
reg = <0xff0000 0x010000>;
read-only;
+
+ compatible = "nvmem-cells";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ cal_art_1000: cal@1000 {
+ reg = <0x1000 0x440>;
+ };
+
+ macaddr_art_1002: macaddr@1002 {
+ reg = <0x1002 0x6>;
+ };
+
+ cal_art_5000: cal@5000 {
+ reg = <0x5000 0x844>;
+ };
};
};
&pcie {
status = "okay";
+
+ wifi@0,0 {
+ compatible = "qcom,ath10k";
+ reg = <0x0 0 0 0 0>;
+ nvmem-cells = <&cal_art_5000>;
+ nvmem-cell-names = "calibration";
+ };
};
&eth0 {
@@ -58,15 +81,6 @@
};
&wmac {
- mtd-cal-data = <&art 0x1000>;
-};
-
-&art {
- compatible = "nvmem-cells";
- #address-cells = <1>;
- #size-cells = <1>;
-
- macaddr_art_1002: macaddr@1002 {
- reg = <0x1002 0x6>;
- };
+ nvmem-cells = <&cal_art_1000>;
+ nvmem-cell-names = "calibration";
};
diff --git a/target/linux/ath79/dts/qca9563_elecom_wrc-300ghbk2-i.dts b/target/linux/ath79/dts/qca9563_elecom_wrc-300ghbk2-i.dts
index 28ffce6434..5ffff57b48 100644
--- a/target/linux/ath79/dts/qca9563_elecom_wrc-300ghbk2-i.dts
+++ b/target/linux/ath79/dts/qca9563_elecom_wrc-300ghbk2-i.dts
@@ -38,6 +38,18 @@
label = "art";
reg = <0x7f0000 0x010000>;
read-only;
+
+ compatible = "nvmem-cells";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ cal_art_1000: cal@1000 {
+ reg = <0x1000 0x440>;
+ };
+
+ macaddr_art_1002: macaddr@1002 {
+ reg = <0x1002 0x6>;
+ };
};
};
@@ -48,15 +60,6 @@
};
&wmac {
- mtd-cal-data = <&art 0x1000>;
-};
-
-&art {
- compatible = "nvmem-cells";
- #address-cells = <1>;
- #size-cells = <1>;
-
- macaddr_art_1002: macaddr@1002 {
- reg = <0x1002 0x6>;
- };
+ nvmem-cells = <&cal_art_1000>;
+ nvmem-cell-names = "calibration";
};
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 57e59a89d6..8783b137ca 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
@@ -74,9 +74,6 @@ case "$FIRMWARE" in
caldata_extract "art" 0x5000 0x844
ath10k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
;;
- elecom,wrc-1750ghbk2-i)
- caldata_extract "art" 0x5000 0x844
- ;;
engenius,ecb1200|\
engenius,ecb1750)
caldata_extract "art" 0x5000 0x844