[OpenWrt-Devel] [PATCH 1/2] ath79: fix mikrotik WAP G-5HacT2HnD mtd partitions

Thibaut VARÈNE hacks at slashdirt.org
Tue Mar 17 12:53:43 EDT 2020


In RouterBOARD parlance there never was an "art" partition.
This partition has always been named 'hard_config' on ar71xx.

This partition contains more than just ART (Atheros Radio Test) data. It
includes the hardware description (product code, serial, board
identifier, name, hardware options, MAC address), as well as other bits
affecting the operation of RouterBoot.
To avoid confusion with regular ART data, this partition is renamed in
line with historical ar71xx and ramips nomenclature as 'hard_config'.

This commit fixes the previous support files and implements the nested
RouterBoot partition scheme as already used by ramips-based SPI-NOR
RouterBOARD DTSes, as previously reviewed and implemented in bbe2cf657c.

Tested-by: Roger Pueyo Centelles <roger.pueyo at guifi.net>
Signed-off-by: Thibaut VARÈNE <hacks at slashdirt.org>
---
Resend after rebase on new mikrotik subtarget
---
 ...ca9556_mikrotik_routerboard-wap-g-5hact2hnd.dts | 61 +++++++++++++---------
 .../etc/hotplug.d/firmware/10-ath9k-eeprom         |  4 +-
 .../etc/hotplug.d/firmware/11-ath10k-caldata       |  2 +-
 3 files changed, 38 insertions(+), 29 deletions(-)

diff --git a/target/linux/ath79/dts/qca9556_mikrotik_routerboard-wap-g-5hact2hnd.dts b/target/linux/ath79/dts/qca9556_mikrotik_routerboard-wap-g-5hact2hnd.dts
index 015bd2efe5..5fd4623726 100644
--- a/target/linux/ath79/dts/qca9556_mikrotik_routerboard-wap-g-5hact2hnd.dts
+++ b/target/linux/ath79/dts/qca9556_mikrotik_routerboard-wap-g-5hact2hnd.dts
@@ -53,7 +53,7 @@
 &eth1 {
 	status = "okay";
 
-	mtd-mac-address = <&art 0x10>;
+	mtd-mac-address = <&hard_config 0x10>;
 
 	pll-data = <0x03000101 0x80000101 0x80001313>;
 	phy-handle = <&phy0>;
@@ -81,32 +81,41 @@
 			#size-cells = <1>;
 
 			partition at 0 {
-				label = "routerboot";
-				reg = <0x000000 0x00e000>;
+				label = "RouterBoot";
+				reg = <0x0 0x20000>;
 				read-only;
-			};
-
-			art: partition at e000 {
-				label = "art";
-				reg = <0x000e000 0x001000>;
-				read-only;
-			};
-
-			partition at f000 {
-				label = "bios";
-				reg = <0x000f000 0x001000>;
-				read-only;
-			};
-
-			partition at 10000 {
-				label = "routerboot2";
-				reg = <0x010000 0x00f000>;
-				read-only;
-			};
-
-			partition at 1f000 {
-				label = "soft_config";
-				reg = <0x001f000 0x001000>;
+				compatible = "fixed-partitions";
+				#address-cells = <1>;
+				#size-cells = <1>;
+
+				partition at 0 {
+					label = "bootloader1";
+					reg = <0x0 0xe000>;
+					read-only;
+				};
+
+				hard_config: partition at e000 {
+					label = "hard_config";
+					reg = <0xe000 0x1000>;
+					read-only;
+				};
+
+				partition at f000 {
+					label = "bios";
+					reg = <0xf000 0x1000>;
+					read-only;
+				};
+
+				partition at 10000 {
+					label = "bootloader2";
+					reg = <0x10000 0xf000>;
+					read-only;
+				};
+
+				partition at 1f000 {
+					label = "soft_config";
+					reg = <0x1f000 0x1000>;
+				};
 			};
 
 			partition at 20000 {
diff --git a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
index f5f88484b5..86995de890 100644
--- a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
+++ b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
@@ -11,8 +11,8 @@ case "$FIRMWARE" in
 "ath9k-eeprom-ahb-18100000.wmac.bin")
 	case $board in
 	mikrotik,routerboard-wap-g-5hact2hnd)
-		mikrotik_caldata_extract "art" 0x1000 0x440
-		ath9k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x10) +2)
+		mikrotik_caldata_extract "hard_config" 0x1000 0x440
+		ath9k_patch_mac $(macaddr_add $(mtd_get_mac_binary hard_config 0x10) +2)
 		;;
 	*)
 		caldata_die "board $board is not supported yet"
diff --git a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index 6eb9a93b75..7773eb1e3a 100644
--- a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -11,7 +11,7 @@ case "$FIRMWARE" in
 "ath10k/cal-pci-0000:00:00.0.bin")
 	case $board in
 	mikrotik,routerboard-wap-g-5hact2hnd)
-		mikrotik_caldata_extract "art" 0x5000 0x844
+		mikrotik_caldata_extract "hard_config" 0x5000 0x844
 		;;
 	esac
 	;;
-- 
2.11.0


_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list