Skip to content

Commit

Permalink
ipq40xx: fix MAC address on Meraki MR33 and MR74 after nvmem-layout
Browse files Browse the repository at this point in the history
...conversion.
Commit 2073601 ("kernel: backport nvmem v6.6 fixes and v6.7 changes")
has caused dthe device to no longer correctly read MAC address from its
onboard 24c64 EEPROM, because "at24" driver doesn't support legacy
nvmem-cell bindings [1] - and there was an explicit config option added
to mandate that behaviour in the following patch:

820-v6.7-0002-nvmem-add-explicit-config-option-to-read-old-syntax-.patch

But some of the devices, MR33 and MR74 included, weren't converted with
that as well.
Convert the definition to use proper fixed-layout binding to fix it.

The offending change was introduced between v23.05.0 and v23.05.1, and
found by bisection:
git bisect start
# status: waiting for both good and bad commits
# good: [bd4f415] OpenWrt v23.05.0: adjust config defaults
git bisect good bd4f415
# status: waiting for bad commit, 1 good commit known
# bad: [a58a866] OpenWrt v23.05.1: adjust config defaults
git bisect bad a58a866
# good: [3d0a78a] qualcommax: only build initramfs if CONFIG_TARGET_ROOTFS_INITRAMFS is set
git bisect good 3d0a78a
# bad: [21e5db9] build: add CycloneDX SBOM JSON support
git bisect bad 21e5db9
# good: [89184b1] mediatek: add build for MT7981 RFB
git bisect good 89184b1
# bad: [41f27bb] bcm53xx: add the latest fix version of brcm_nvram
git bisect bad 41f27bb
# good: [b649b0b] kernel: nvmem: fix "fixed-layout" & support "mac-base"
git bisect good b649b0b
# bad: [2073601] kernel: backport nvmem v6.6 fixes and v6.7 changes
git bisect bad 2073601
# good: [0669716] kernel: backport v6.6 nvmem changes
git bisect good 0669716
# first bad commit: [2073601] kernel: backport nvmem v6.6 fixes and v6.7 changes

Link: [1] openwrt#15393 (comment)
Fixes: 2073601 ("kernel: backport nvmem v6.6 fixes and v6.7 changes")
Fixes: openwrt#15393
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
(cherry picked from commit ccbffad)
[replace mac-address-increment with #nvmem-cell-cells]
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: openwrt#16624
Signed-off-by: Robert Marko <robimarko@gmail.com>
  • Loading branch information
Leo-PL authored and robimarko committed Oct 7, 2024
1 parent fa0a7e0 commit 4d89918
Showing 1 changed file with 14 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -133,11 +133,17 @@
pagesize = <32>;
reg = <0x50>;
read-only; /* This holds our MAC & Meraki board-data */
#address-cells = <1>;
#size-cells = <1>;

mac_address: mac-address@66 {
reg = <0x66 0x6>;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;

mac_address: mac-address@66 {
compatible = "mac-base";
reg = <0x66 0x6>;
#nvmem-cell-cells = <1>;
};
};
};
};
Expand Down Expand Up @@ -284,9 +290,8 @@
compatible = "qcom,ath10k";
status = "okay";
reg = <0x00010000 0 0 0 0>;
nvmem-cells = <&mac_address>;
nvmem-cells = <&mac_address 1>;
nvmem-cell-names = "mac-address";
mac-address-increment = <1>;
};
};
};
Expand Down Expand Up @@ -390,22 +395,20 @@
&wifi0 {
status = "okay";
qcom,ath10k-calibration-variant = "Meraki-MR33";
nvmem-cells = <&mac_address>;
nvmem-cells = <&mac_address 2>;
nvmem-cell-names = "mac-address";
mac-address-increment = <2>;
};

&wifi1 {
status = "okay";
qcom,ath10k-calibration-variant = "Meraki-MR33";
nvmem-cells = <&mac_address>;
nvmem-cells = <&mac_address 3>;
nvmem-cell-names = "mac-address";
mac-address-increment = <3>;
};

&gmac {
status = "okay";
nvmem-cells = <&mac_address>;
nvmem-cells = <&mac_address 0>;
nvmem-cell-names = "mac-address";
};

Expand Down

0 comments on commit 4d89918

Please sign in to comment.