Paste #225307

From 396e46b54672dbda96894d1b7203297367282d85 Mon Sep 17 00:00:00 2001
From: Stijn Segers <foss@volatilesystems.org>
Date: Sat, 13 Mar 2021 18:42:12 +0100
Subject: [PATCH v2] ramips: mt7621: fix R6850 EEPROM offsets

The Netgear R6850 has its EEPROM data sitting at 0x28000 for the 5 GHz
radio and 0x20000 for the 2,4 GHz radio. See forum topic for a hex
dump [1].

[1]  https://forum.openwrt.org/t/netgear-r6850-very-low-transmit-power-on-5ghz/90984

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
---
Changes since v1: move mediatek,mtd-eeprom property from the DTSI into
the device DTSes.

Please backport to 21.02 as well
---
 target/linux/ramips/dts/mt7621_netgear_r6260.dts        | 8 ++++++++
 target/linux/ramips/dts/mt7621_netgear_r6350.dts        | 8 ++++++++
 target/linux/ramips/dts/mt7621_netgear_r6850.dts        | 8 ++++++++
 target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi | 6 ++----
 4 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/target/linux/ramips/dts/mt7621_netgear_r6260.dts b/target/linux/ramips/dts/mt7621_netgear_r6260.dts
index b32f26d890..53ec050f12 100644
--- a/target/linux/ramips/dts/mt7621_netgear_r6260.dts
+++ b/target/linux/ramips/dts/mt7621_netgear_r6260.dts
@@ -6,3 +6,11 @@
 	compatible = "netgear,r6260", "mediatek,mt7621-soc";
 	model = "Netgear R6260";
 };
+
+&wifi2 {
+		mediatek,mtd-eeprom = <&factory 0x0>;
+};
+
+&wifi5 {
+		mediatek,mtd-eeprom = <&factory 0x8000>;
+};
diff --git a/target/linux/ramips/dts/mt7621_netgear_r6350.dts b/target/linux/ramips/dts/mt7621_netgear_r6350.dts
index 22535c9ae6..56e32a45f9 100644
--- a/target/linux/ramips/dts/mt7621_netgear_r6350.dts
+++ b/target/linux/ramips/dts/mt7621_netgear_r6350.dts
@@ -6,3 +6,11 @@
 	compatible = "netgear,r6350", "mediatek,mt7621-soc";
 	model = "Netgear R6350";
 };
+
+&wifi2 {
+		mediatek,mtd-eeprom = <&factory 0x0>;
+};
+
+&wifi5 {
+		mediatek,mtd-eeprom = <&factory 0x8000>;
+};
diff --git a/target/linux/ramips/dts/mt7621_netgear_r6850.dts b/target/linux/ramips/dts/mt7621_netgear_r6850.dts
index 78e9093216..23ea297b6c 100644
--- a/target/linux/ramips/dts/mt7621_netgear_r6850.dts
+++ b/target/linux/ramips/dts/mt7621_netgear_r6850.dts
@@ -6,3 +6,11 @@
 	compatible = "netgear,r6850", "mediatek,mt7621-soc";
 	model = "Netgear R6850";
 };
+
+&wifi2 {
+		mediatek,mtd-eeprom = <&factory 0x20000>;
+};
+
+&wifi5 {
+		mediatek,mtd-eeprom = <&factory 0x28000>;
+};
diff --git a/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi
index 7a15cd1f6c..d971da3dad 100644
--- a/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi
+++ b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi
@@ -78,19 +78,17 @@
 };
 
 &pcie0 {
-	wifi@0,0 {
+	wifi5: wifi@0,0 {
 		compatible = "mediatek,mt76";
 		reg = <0x0 0 0 0 0>;
-		mediatek,mtd-eeprom = <&factory 0x8000>;
 		ieee80211-freq-limit = <5000000 6000000>;
 	};
 };
 
 &pcie1 {
-	wifi@0,0 {
+	wifi2: wifi@0,0 {
 		compatible = "mediatek,mt76";
 		reg = <0x0 0 0 0 0>;
-		mediatek,mtd-eeprom = <&factory 0x0>;
 		ieee80211-freq-limit = <2400000 2500000>;
 	};
 };
-- 
2.30.1

Raw