[U-Boot-Users] [PATCH] NET: Proper return code handling in eth_init() function in file eth.c

Stefan Roese sr at denx.de
Tue Jan 8 18:26:49 CET 2008


On Tuesday 08 January 2008, Ben Warren wrote:
> > Probably i got the reason why this is happening. As a convention that
> > is usually followed, the code in eth_init() function in the file eth.c
> > was reworked to handle 0 in case of Success and any non zero value in
> > case of an error.
> >
> > Most of the Ethernet driver's init routines adhere to the same
> > convention of returning a 0 on Success and a non zero value in case of
> > error. However, the driver you might be using, may be returning a non
> > zero value on Successful initialization, that is why the problem is
> > arising. The solution could be to return 0 in case of Success, from
> > the Ethernet driver's init() routine.
> >
> > Thanks!!
> >
> > --
> > Regards,
> > Upakul Barkakaty
>
> Yeah, looks like ppc_4xx_eth_init() (cpu/ppc4xx/4xx_enet.c) returns 1 on
> success and -1 on failure.  I don't have hardware to test this.  Can you
> check it out Stefan?  Let's look through the other drivers to see if
> this is an isolated case.

I'm back now and will give it a try this evening. Thanks for pointing this 
out.

Note: This patch may trigger other platform ethernet driver problems as well. 
So I strongly encourage all platform maintainers/custodians to check if a 
change in the return code of the ethernet driver is needed.

Best regards,
Stefan

=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================




More information about the U-Boot mailing list