mirror of
https://github.com/openwrt/openwrt.git
synced 2026-10-12 06:57:57 +04:00
qualcommax: ipq807x: ax89x: read MAC from Factory UBI volume
Currently, AX89X MAC is read for the ethaddr U-Boot env variable, but this
variable is only set if user interrupted boot and ran saveenv before.
So, instead of relying on U-Boot, lets read the MAC from the same place as
U-Boot, from the Factory UBI volume.
There is also a Factory2 UBI volume, but MAC-s in both must be indentical
as Factory2 is only used during upgrade to store the new versions.
Factory UBI volume has 2 MAC-s, one at 0x100e and one at 0x1014.
U-Boot uses the one at 0x100e and increments it by one, so we do the same.
Fixes: f50435627d ("qualcommax: ipq60xx/ipq807x: convert to PPE networking stack")
Link: #24604
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
1 parent
29cf0022eb
commit
ddc87cfcfe
2 files changed
+31
-18
No files matched your search
@@ -455,18 +455,30 @@
|
||||
partition@3e0000 {
|
||||
label = "0:appsblenv";
|
||||
reg = <0x003e0000 0x20000>;
|
||||
|
||||
nvmem-layout {
|
||||
compatible = "u-boot,env";
|
||||
|
||||
macaddr_ubootenv_ethaddr: ethaddr {};
|
||||
};
|
||||
};
|
||||
|
||||
partition@400000 {
|
||||
compatible = "linux,ubi";
|
||||
label = "UBI_DEV";
|
||||
reg = <0x00400000 0xfc00000>;
|
||||
|
||||
volumes {
|
||||
ubi-volume-factory {
|
||||
volname = "Factory";
|
||||
|
||||
nvmem-layout {
|
||||
compatible = "fixed-layout";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
macaddr: macaddr@1014 {
|
||||
compatible = "mac-base";
|
||||
reg = <0x100e 0x6>;
|
||||
#nvmem-cell-cells = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -576,7 +588,7 @@
|
||||
reg = <1>;
|
||||
label = "lan7";
|
||||
phy-handle = <&qca8337_0>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -584,7 +596,7 @@
|
||||
reg = <2>;
|
||||
label = "lan6";
|
||||
phy-handle = <&qca8337_1>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -592,7 +604,7 @@
|
||||
reg = <3>;
|
||||
label = "lan5";
|
||||
phy-handle = <&qca8337_2>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -600,7 +612,7 @@
|
||||
reg = <4>;
|
||||
label = "lan4";
|
||||
phy-handle = <&qca8337_3>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -608,7 +620,7 @@
|
||||
reg = <5>;
|
||||
label = "lan3";
|
||||
phy-handle = <&qca8337_4>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -619,7 +631,7 @@
|
||||
phy-handle = <&qca8033>;
|
||||
managed = "in-band-status";
|
||||
qca,sgmii-enable-pll;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
};
|
||||
@@ -684,7 +696,7 @@
|
||||
phy-handle = <&qca8075_8>;
|
||||
phy-mode = "qsgmii";
|
||||
pcs-handle = <&uniphy0 0>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -694,7 +706,7 @@
|
||||
phy-handle = <&qca8075_9>;
|
||||
phy-mode = "qsgmii";
|
||||
pcs-handle = <&uniphy0 1>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -704,7 +716,7 @@
|
||||
phy-handle = <&qca8075_a>;
|
||||
phy-mode = "qsgmii";
|
||||
pcs-handle = <&uniphy0 2>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -714,7 +726,7 @@
|
||||
phy-handle = <&qca8075_b>;
|
||||
phy-mode = "qsgmii";
|
||||
pcs-handle = <&uniphy0 3>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -725,7 +737,7 @@
|
||||
phy-mode = "10gbase-r";
|
||||
managed = "in-band-status";
|
||||
pcs-handle = <&uniphy1 0>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
@@ -736,7 +748,7 @@
|
||||
phy-mode = "usxgmii";
|
||||
managed = "in-band-status";
|
||||
pcs-handle = <&uniphy2 0>;
|
||||
nvmem-cells = <&macaddr_ubootenv_ethaddr>;
|
||||
nvmem-cells = <&macaddr 1>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -8,6 +8,7 @@ CONFIG_MDIO_BITBANG=y
|
||||
CONFIG_MDIO_GPIO=y
|
||||
# CONFIG_MFD_HI6421_SPMI is not set
|
||||
CONFIG_MFD_SPMI_PMIC=y
|
||||
CONFIG_MTD_UBI_NVMEM=y
|
||||
CONFIG_NET_DSA_QCA8K=y
|
||||
CONFIG_NET_DSA_TAG_QCA=y
|
||||
# CONFIG_NVMEM_SPMI_SDAM is not set
|
||||
|
||||
Reference in new issue
Block a user