[U-Boot-Users] smc911x: cannot pass the MAC address from U-Boot to the Linux driver via chip registers

Hi,
in the smc911x U-Boot driver the call of eth_halt() causes a reset of the ethernet controller. This also resets the MAC address in the according chip registers. This makes it impossible to pass the MAC address to an ARM kernel because the smc911x linux driver reads the MAC address from the MAC registers and complains if the found values are invalid.
Any ideas to solve this problem, e.g. - rewriting the MAC address after reset? - not to reset the chip? - another passing mechanism to the kernel? - or ...
Best Regards, Jens

In message 482DA51D.7070705@tqs.de you wrote:
in the smc911x U-Boot driver the call of eth_halt() causes a reset of the ethernet controller. This also resets the MAC address in the according chip registers. This makes it impossible to pass the MAC address to an ARM kernel because the smc911x linux driver reads the MAC address from the MAC registers and complains if the found values are invalid.
You should have searched the archives and possible read the FAQ before posting. This has been discussed a zillion times before.
Any ideas to solve this problem, e.g.
Pass it with the kernel's boot arguments.
...or implement FDT support for ARM.
Best regards,
Wolfgang Denk
participants (2)
-
Jens Gehrlein
-
Wolfgang Denk