[U-Boot] [PATCH 2/2] MPC8308ERDB: minimal support for devboard from Freescale
Ilya Yanok
yanok at emcraft.com
Wed Jun 23 14:01:08 CEST 2010
Hi Ben,
On 22.06.2010 23:10, Ben Warren wrote:
>>>>> +int board_eth_init(bd_t *bis)
>>>>> +{
>>>>> + cpu_eth_init(bis); /* Initialize TSECs first */
>>>>>
>>>> I think it's wrong to ignore the return code here.
>>> What makes you think so? What can we do with the return code here?
>>> Print
>>> warning? If we return error from board_eth_init() calling code will
>>> call
>>> cpu_eth_init() again which is useless as we have already called it.
>
> Yes, print a warning if < 0. As you've noticed, returning -1 wouldn't
> be good. I'm not aware of a U-boot policy for handling hardware
> problems other than printf.
Actually I thought that controllers missing in the "NET: " line would be
enough but I'll add a warning if you ask.
>>>>> + return pci_eth_init(bis);
>> My understanding is that pci_eth_init() and board_eth_init() return
>> the number of NIC's found - should that number not include the number
>> of successfully initialized TSECs?
>>
> Yes, please. Something like:
>
> int board_eth_init(bd_t *bis)
> {
> int rc, num_if = 0;
> if ((rc = cpu_eth_init(bis)) >= 0)
> {
> num_if += rc;
> } else {
> print error message
> }
> if ((rc = pci_eth_init(bis)) >= 0)
> {
> num_if += rc;
> } else {
> print error message
> }
> return num_if;
> }
>
> I'm working on changing net/eth.c to be less kludgy, but am having a
> hard time setting up my test bed. Hopefully in the next few days.
I'll do like you proposed.
Regards, Ilya.
More information about the U-Boot
mailing list