Просмотр исходного кода

ath79: meraki_mr1[26]: userspace cal to nvmem

Userspace handling is deprecated.

Signed-off-by: Rosen Penev <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/21002
Signed-off-by: Hauke Mehrtens <[email protected]>
Rosen Penev 1 год назад
Родитель
Сommit
b182f2e0b4

+ 21 - 9
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>;
+					};
+				};
 			};
 		};
 	};

+ 13 - 4
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>;
+					};
+				};
 			};
 		};
 	};

+ 0 - 23
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