[openwrt/openwrt] ipq40xx: nvmem cells for EZVIZ CS-W3-WD1200G EUP

LEDE Commits lede-commits at lists.infradead.org
Fri Dec 3 15:37:59 PST 2021


chunkeey pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/d641a604789ac604b01b9a7b408614e1cb74c700

commit d641a604789ac604b01b9a7b408614e1cb74c700
Author: Christian Lamparter <chunkeey at gmail.com>
AuthorDate: Sat Nov 27 23:06:13 2021 +0100

    ipq40xx: nvmem cells for EZVIZ CS-W3-WD1200G EUP
    
    introduce nvmem pre-cal + mac-address cells for both Wifis
    and ethernet on the EZVIZ CS-W3-WD1200G EUP. This is one of
    the few devices in which the correct mac adress is already
    at the right place for Wifi, so no separate nvmem cell is
    needed.
    
    Signed-off-by: Christian Lamparter <chunkeey at gmail.com>
---
 .../etc/hotplug.d/firmware/11-ath10k-caldata       |  2 --
 .../lib/preinit/05_set_iface_mac_ipq40xx.sh        |  4 ---
 .../boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts    | 34 ++++++++++++++++++++++
 3 files changed, 34 insertions(+), 6 deletions(-)

diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index 8924fb3258..d368475ffc 100644
--- a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -64,7 +64,6 @@ case "$FIRMWARE" in
 	8dev,jalapeno |\
 	alfa-network,ap120c-ac |\
 	cilab,meshpoint-one |\
-	ezviz,cs-w3-wd1200g-eup |\
 	glinet,gl-ap1300 |\
 	glinet,gl-b1300 |\
 	glinet,gl-b2200 |\
@@ -187,7 +186,6 @@ case "$FIRMWARE" in
 	8dev,jalapeno |\
 	alfa-network,ap120c-ac |\
 	cilab,meshpoint-one |\
-	ezviz,cs-w3-wd1200g-eup |\
 	glinet,gl-ap1300 |\
 	glinet,gl-b1300 |\
 	glinet,gl-b2200 |\
diff --git a/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh b/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh
index 1b8454e4c5..d1fcd804d9 100644
--- a/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh
+++ b/target/linux/ipq40xx/base-files/lib/preinit/05_set_iface_mac_ipq40xx.sh
@@ -7,10 +7,6 @@ preinit_set_mac_address() {
 		ip link set dev eth0 address $(macaddr_add "$base_mac" 1)
 		ip link set dev eth1 address $(macaddr_add "$base_mac" 3)
 		;;
-	ezviz,cs-w3-wd1200g-eup)
-		ip link set dev eth0 address $(mtd_get_mac_binary "ART" 0x6)
-		ip link set dev eth1 address $(mtd_get_mac_binary "ART" 0x0)
-		;;
 	engenius,eap2200)
 		base_mac=$(cat /sys/class/net/eth0/address)
 		ip link set dev eth1 address $(macaddr_add "$base_mac" 1)
diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts
index 062826c7a4..52311755b7 100644
--- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts
+++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts
@@ -210,6 +210,26 @@
 				label = "ART";
 				reg = <0x00170000 0x00010000>;
 				read-only;
+
+				compatible = "nvmem-cells";
+				#address-cells = <1>;
+				#size-cells = <1>;
+
+				macaddr_art_0: macaddr at 0 {
+					reg = <0x0 0x6>;
+				};
+
+				macaddr_art_6: macaddr at 6 {
+					reg = <0x6 0x6>;
+				};
+
+				precal_art_1000: precal at 1000 {
+					reg = <0x1000 0x2f20>;
+				};
+
+				precal_art_5000: precal at 5000 {
+					reg = <0x5000 0x2f20>;
+				};
 			};
 
 			partition9 at 580000 {
@@ -234,9 +254,23 @@
 &wifi0 {
 	status = "okay";
 	qcom,ath10k-calibration-variant = "ezviz-cs-w3-wd1200g-eup";
+	nvmem-cell-names = "pre-calibration";
+	nvmem-cells = <&precal_art_1000>;
 };
 
 &wifi1 {
 	status = "okay";
 	qcom,ath10k-calibration-variant = "ezviz-cs-w3-wd1200g-eup";
+	nvmem-cell-names = "pre-calibration";
+	nvmem-cells = <&precal_art_5000>;
+};
+
+&gmac0 {
+	nvmem-cell-names = "mac-address";
+	nvmem-cells = <&macaddr_art_6>;
+};
+
+&gmac1 {
+	nvmem-cell-names = "mac-address";
+	nvmem-cells = <&macaddr_art_0>;
 };



More information about the lede-commits mailing list