diff options
author | Stefan Roese <sr@denx.de> | 2005-10-10 17:43:58 +0200 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2005-10-10 17:43:58 +0200 |
commit | 4f92ac3648483cef34eadf69da1f0895a5a148d8 (patch) | |
tree | 70b5ba86e840beab353f54e6b4b744cd395c14e7 /cpu | |
parent | c29ab9d71d229ee94e8263845ea54222005e3880 (diff) | |
download | u-boot-imx-4f92ac3648483cef34eadf69da1f0895a5a148d8.zip u-boot-imx-4f92ac3648483cef34eadf69da1f0895a5a148d8.tar.gz u-boot-imx-4f92ac3648483cef34eadf69da1f0895a5a148d8.tar.bz2 |
Fix problem in ppc4xx eth-driver without ethaddr (only without
CONFIG_NET_MULTI set)
Patch by Stefan Roese, 10 Oct 2005
Diffstat (limited to 'cpu')
-rw-r--r-- | cpu/ppc4xx/4xx_enet.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/cpu/ppc4xx/4xx_enet.c b/cpu/ppc4xx/4xx_enet.c index 34f6e97..d3f1de4 100644 --- a/cpu/ppc4xx/4xx_enet.c +++ b/cpu/ppc4xx/4xx_enet.c @@ -139,7 +139,7 @@ static uint32_t mal_ier; #if !defined(CONFIG_NET_MULTI) -struct eth_device *emac0_dev; +struct eth_device *emac0_dev = NULL; #endif @@ -306,8 +306,10 @@ static int ppc_4xx_eth_init (struct eth_device *dev, bd_t * bis) /* before doing anything, figure out if we have a MAC address */ /* if not, bail */ - if (memcmp (dev->enetaddr, "\0\0\0\0\0\0", 6) == 0) + if (memcmp (dev->enetaddr, "\0\0\0\0\0\0", 6) == 0) { + printf("ERROR: ethaddr not set!\n"); return -1; + } #if defined(CONFIG_440GX) /* Need to get the OPB frequency so we can access the PHY */ @@ -1486,12 +1488,16 @@ void eth_halt (void) { int eth_init (bd_t *bis) { ppc_4xx_eth_initialize(bis); - return(ppc_4xx_eth_init(emac0_dev, bis)); + if (emac0_dev) { + return ppc_4xx_eth_init(emac0_dev, bis); + } else { + printf("ERROR: ethaddr not set!\n"); + return -1; + } } int eth_send(volatile void *packet, int length) { - return (ppc_4xx_eth_send(emac0_dev, packet, length)); } |