Comment 4 for bug 1968111

Revision history for this message
Alfonso Sanchez-Beato (alfonsosanchezbeato) wrote :

After debugging the driver, it looked like it was not able to find the device tree node with the MAC address, and was therefore assigning a random MAC address. Further debugging showed that the device was actually being detected as an RPi3b instead of an RPi3b+:

$ cat /proc/device-tree/compatible
raspberrypi,3-model-b\0brcm,bcm2837\0

While in rpi jammy classic images you see:

$ cat /proc/device-tree/compatible
raspberrypi,3-model-b-plus\0brcm,bcm2837\0

Even though all firmware and device trees are the same. The only difference was that in UC22 we set os_prefix [1] to ask the firmware to load files from a different folder. After copying to the root of the seed partition kernel, initrd, device trees, and cmdline.txt files, I removed the os_prefix and rebooted. After that, an RPi3b+ is properly detected and the MAC has a fixed address. So, it turns out that this is a firmware bug in the implementation of os_prefix.

[1] https://www.raspberrypi.com/documentation/computers/config_txt.html#os_prefix