Hi all,
I observed that when the Ethernet initialization fails, it is not properly halting the operation and exiting. On walking through the Networking files, I saw that the eth_init() in eth.c either returns a 0 or 1. Now, in the NetLoop() in net.c file, from where the eth_init() gets called, checks the condition
if (eth_init(bd) < 0)
{
eth_halt();
return(-1);
}
which is thus never true.
Thus the network operation, never exits gracefully, if Ethernet init fails.
Any of you, have any clues about this??