Closed samveen closed 1 year ago
There’s no Ethernet on pizero2 so no reservations is made in the new range for that. The WiFi allocation is independent of msc95xx.macaddr.
Edit: The WiFi MAC address is stored in the OTP of the WiFi module and the firmware has no knowledge of this because it's a property of the module rather than the SOC.
The command line says "if there is an SMSC95xx Ethernet interface then its MAC address should be the following". This does nothing if there is no such interface. You could argue that the parameter is unnecessary and should be removed, especially since the same information is now conveyed via Device Tree, but there could well be non-DT-based systems out there (bare metal OSes, etc.) that rely on the command line.
@timg236 I've been leveraging the mac address value of smsc95xx.macaddr
to stabilized the transient macs generated by my enc28j60 modules. The reason I asked for this change is that any network identification tools based on OUIs will misidentify my device, when connected to a wired network.
@pelwell Yes Phil. I'm doing exactly that: I rely on the command line to apply a static mac address to the SPI ethernet modules I've connected to my Zero,Zero W and Zero W 2s (which get transient MACs on every reboot).
That said, I'm realize I'm being pedantic, and that this issue is possibly the lowest possible priority issue in the whole raspi organiztion. Please feel free to close it if the pedantry is beyond acceptable limits :smile:
The problem here is that on the Zero 2 W the WLAN MAC addresses (currently in the E4:5F:01:XX:XX:XX
range) are programmed into the WiFi chip during manufacture, and the firmware does not contain (and will never contain) enough software to enable them to be read back.
NB On BCM2711 you can’t assume that the OUIs for Ethernet/WiFi/BT will be the same either. The only way to get the WiFi MAC is to ask the interface. If you want to allocate your own MAC then you can write this to customer OTP OR generate something from the serial number at runtime. NB The OUIs will also change without warning as more devices are made. We just document the ones in use so far
Is this the right place for my bug report? Yes: This is regarding the calculation of the value for the kernel command line parameter
smsc95xx.macaddr
Description of the bug On the Raspberry Pi Zero 2 W, the OUI prefix of the MAC addresses used in the WiFi devices is
e4:5f:01:xx:xx:xx
:However the value of the parameter
smsc95xx.macaddr
calculated and sent to the kernel is with the older OUI prefixB8:27:EB:XX:XX:XX
:To reproduce
cat /proc/cmdline
ip -o link sh dev wlan0
Expected behaviour The kernel command line should have an OUI prefix of
E4:5F:01:XX:XX:XX
for the kernel command line parametersmsc95xx.macaddr
Actual behaviour The kernel command line uses the older OUI prefix of
B8:27:EB:XX:XX:XX
for the kernel command line parametersmsc95xx.macaddr
System
References: