summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRosen Penev2024-09-04 00:07:49 +0000
committerHauke Mehrtens2025-11-28 00:20:33 +0000
commit75b9fae0c338203d8d1d114ff3bebc8b2feaf9cb (patch)
treed04ba70ad87c433c048dbf66afd64b0195e7476a
parent00e5204e8433a9d2717bf883101789a9f0d8cc45 (diff)
downloadopenwrt-75b9fae0c338203d8d1d114ff3bebc8b2feaf9cb.tar.gz
lantiq: dgn3500: use nvmem to load calibration
Userspace handling is deprecated. Signed-off-by: Rosen Penev <rosenp@gmail.com> Link: https://github.com/openwrt/openwrt/pull/16376 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
-rw-r--r--target/linux/lantiq/files/arch/mips/boot/dts/lantiq/ar9_netgear_dgn3500.dtsi31
-rw-r--r--target/linux/lantiq/xway/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom4
2 files changed, 29 insertions, 6 deletions
diff --git a/target/linux/lantiq/files/arch/mips/boot/dts/lantiq/ar9_netgear_dgn3500.dtsi b/target/linux/lantiq/files/arch/mips/boot/dts/lantiq/ar9_netgear_dgn3500.dtsi
index 295de79119..edf79f6c45 100644
--- a/target/linux/lantiq/files/arch/mips/boot/dts/lantiq/ar9_netgear_dgn3500.dtsi
+++ b/target/linux/lantiq/files/arch/mips/boot/dts/lantiq/ar9_netgear_dgn3500.dtsi
@@ -125,6 +125,14 @@
&gsw {
phy-mode = "mii";
+
+ nvmem-cells = <&macaddr_uboot_ethaddr 0>;
+ nvmem-cell-names = "mac-address";
+};
+
+&ppe {
+ nvmem-cells = <&macaddr_uboot_ethaddr 1>;
+ nvmem-cell-names = "mac-address";
};
&pci0 {
@@ -138,7 +146,8 @@
wifi@e,0 {
compatible = "pci168c,0029";
reg = <0x7000 0 0 0 0>;
- qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:00:0e.0.bin */
+ nvmem-cells = <&cal_f000>, <&macaddr_uboot_ethaddr 2>;
+ nvmem-cell-names = "calibration", "mac-address";
};
};
@@ -165,12 +174,30 @@
reg = <0x10000 0x10000>;
label = "u-boot-env";
read-only;
+
+ nvmem-layout {
+ compatible = "u-boot,env";
+
+ macaddr_uboot_ethaddr: ethaddr {
+ #nvmem-cell-cells = <1>;
+ };
+ };
};
- ath9k_cal: partition@20000 {
+ partition@20000 {
reg = <0x20000 0x10000>;
label = "calibration";
read-only;
+
+ nvmem-layout {
+ compatible = "fixed-layout";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ cal_f000: calibration@f000 {
+ reg = <0xf000 0xeb8>;
+ };
+ };
};
partition@50000 {
diff --git a/target/linux/lantiq/xway/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom b/target/linux/lantiq/xway/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom
index 2fdc575076..0ae83dd7c9 100644
--- a/target/linux/lantiq/xway/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom
+++ b/target/linux/lantiq/xway/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom
@@ -40,10 +40,6 @@ case "$FIRMWARE" in
bt,homehub-v3a)
caldata_extract_swap "art-copy" 0x0 0x1000
;;
- netgear,dgn3500|netgear,dgn3500b)
- caldata_extract "calibration" 0xf000 0x1000
- ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) 2) 0x20c
- ;;
*)
caldata_die "board $board is not supported yet"
;;