With the latest NVMEM enhancements merged, barebox networking core now always consults NVMEM cells referenced in the network controller device tree node before it falls back to randomizing a new address. The SAM5D27-SOM1 has a 256 byte EEPROM, which holds a MAC address in its last 6 bytes. Describe this in the device tree, so boards using the SoM will get an unique MAC address assigned and fixed up into the kernel device tree. This change can be dropped again when/if the change is submitted and applied upstream. Reported-by: Alexander Dahl <ada@xxxxxxxxxxx> Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> --- arch/arm/dts/at91-sama5d27_som1.dtsi | 18 ++++++++++++++++++ arch/arm/dts/at91-sama5d27_som1_ek.dts | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 arch/arm/dts/at91-sama5d27_som1.dtsi diff --git a/arch/arm/dts/at91-sama5d27_som1.dtsi b/arch/arm/dts/at91-sama5d27_som1.dtsi new file mode 100644 index 000000000000..0d84c45f9263 --- /dev/null +++ b/arch/arm/dts/at91-sama5d27_som1.dtsi @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +#include "sama5d2.dtsi" + +&macb0 { + nvmem-cells = <&macaddr>; + nvmem-cell-names = "mac-address"; +}; + +&{/ahb/apb/i2c@f8028000/at24@50} { + #address-cells = <1>; + #size-cells = <1>; + + macaddr: mac-address@fa { + reg = <0xfa 6>; + label = "mac-address"; + }; +}; diff --git a/arch/arm/dts/at91-sama5d27_som1_ek.dts b/arch/arm/dts/at91-sama5d27_som1_ek.dts index 97a326dd2b26..1a704b42680f 100644 --- a/arch/arm/dts/at91-sama5d27_som1_ek.dts +++ b/arch/arm/dts/at91-sama5d27_som1_ek.dts @@ -4,7 +4,7 @@ */ #include <arm/at91-sama5d27_som1_ek.dts> -#include "sama5d2.dtsi" +#include "at91-sama5d27_som1.dtsi" / { chosen { -- 2.29.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox