[U-Boot] [PATCH 1/1] SMC911x driver fixed for NFS boot

Josh Karabin gkarabin at vocollect.com
Tue May 19 17:15:36 CEST 2009


Manikandan Pillai wrote:
> eth_halt() function in the smc911x drivers used to call the
> smc911x_reset() function. eth_halt() used to be called after
> tftp transfers. This used to put the ethernet chip in reset
> while the linux boots up resulting in the ethernet driver
> not coming up. NFS boot used to fail as a result.
> 
> This patch calls smc911x_shutdown() instead of smc911x_reset().
> Some comments received has also been fixed.

This patch fixes NFS boot in the case where the kernel is first loaded
with tftpboot, as described.

If the kernel is loaded using some other mechanism, like flash, the smc
device is never initialized.  At least in the case where there is no
valid EEPROM connected to the smc device, NFS boot will fail.  I'm not
sure whether or not a loaded MAC address has anything to do with it, or
if the kernel is expecting the smc device to be in a different state.

Relying on tftpboot leaving the ethernet device in the right state
doesn't seem right.  Is there an existing clean way to deal with this,
short of adding an initramfs to fix it up?  I'll work on a patch if
someone can suggest an approach that makes sense.


Regards,

- Josh





More information about the U-Boot mailing list