From: Ben Warren Date: Wed, 1 Sep 2010 06:05:04 +0000 (-0700) Subject: Net: clarify board/cpu_eth_init calls X-Git-Tag: v2010.12-rc2~54 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=8ad25bf8d9233eb7d0b614612108622a59069354;p=u-boot Net: clarify board/cpu_eth_init calls This has always been confusing, and the idea of these functions returning the number of interfaces initialized was half-baked and ultimately pointless. Instead, act more like regular functions and return < 0 on failure, >= 0 on success. This change shouldn't break anything. Signed-off-by: Ben Warren --- diff --git a/net/eth.c b/net/eth.c index 5c70d4f3ff..6082c90072 100644 --- a/net/eth.c +++ b/net/eth.c @@ -204,10 +204,18 @@ int eth_initialize(bd_t *bis) #if defined(CONFIG_MII) || defined(CONFIG_CMD_MII) miiphy_init(); #endif - /* Try board-specific initialization first. If it fails or isn't - * present, try the cpu-specific initialization */ - if (board_eth_init(bis) < 0) - cpu_eth_init(bis); + /* + * If board-specific initialization exists, call it. + * If not, call a CPU-specific one + */ + if (board_eth_init != __def_eth_init) { + if (board_eth_init(bis) < 0) + printf("Board Net Initialization Failed\n"); + } else if (cpu_eth_init != __def_eth_init) { + if (cpu_eth_init(bis) < 0) + printf("CPU Net Initialization Failed\n"); + } else + printf("Net Initialization Skipped\n"); #if defined(CONFIG_DB64360) || defined(CONFIG_CPCI750) mv6436x_eth_initialize(bis);