From 66952b9ff4743459a3bf77216933a43096865cbc Mon Sep 17 00:00:00 2001 From: Corey Minyard Date: Fri, 3 May 2024 08:12:38 -0500 Subject: [PATCH] ipq40xx: Properly set MAC addresses for the EAP1300 The code that was there was just taking whatever was left in the registers, which was just wrong. Set the addresses using the value from the u-boot environment, the same way the OEM firmware does. Signed-off-by: Corey Minyard Link: https://github.com/openwrt/openwrt/pull/15358 Signed-off-by: Christian Marangi Link: https://github.com/openwrt/openwrt/pull/15402 Signed-off-by: Robert Marko --- .../arch/arm/boot/dts/qcom-ipq4018-eap1300.dts | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-eap1300.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-eap1300.dts index af9a438e2e..a72cb02ff1 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-eap1300.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-eap1300.dts @@ -194,8 +194,13 @@ reg = <0x190000 0x1dc0000>; }; partition9@1f50000 { + compatible = "u-boot,env"; label = "u-boot-env"; reg = <0x01f50000 0x00010000>; + + macaddr_ubootenv_ethaddr: ethaddr { + #nvmem-cell-cells = <1>; + }; }; partition10@1f60000 { label = "userconfig"; @@ -222,6 +227,8 @@ &swport5 { status = "okay"; label = "lan"; + nvmem-cell-names = "mac-address"; + nvmem-cells = <&macaddr_ubootenv_ethaddr 0>; }; &gmac { @@ -234,14 +241,14 @@ &wifi0 { status = "okay"; - nvmem-cell-names = "pre-calibration"; - nvmem-cells = <&precal_art_1000>; + nvmem-cell-names = "pre-calibration", "mac-address"; + nvmem-cells = <&precal_art_1000>, <&macaddr_ubootenv_ethaddr 1>; qcom,ath10k-calibration-variant = "EnGenius-EAP1300"; }; &wifi1 { status = "okay"; - nvmem-cell-names = "pre-calibration"; - nvmem-cells = <&precal_art_5000>; + nvmem-cell-names = "pre-calibration", "mac-address"; + nvmem-cells = <&precal_art_5000>, <&macaddr_ubootenv_ethaddr 2>; qcom,ath10k-calibration-variant = "EnGenius-EAP1300"; }; -- 2.30.2