Fix problem in ppc4xx eth-driver without ethaddr (only without

CONFIG_NET_MULTI set)
Patch by Stefan Roese, 10 Oct 2005
This commit is contained in:
Stefan Roese 2005-10-10 17:43:58 +02:00
parent c29ab9d71d
commit 4f92ac3648
2 changed files with 14 additions and 4 deletions

View File

@ -2,6 +2,10 @@
Changes for U-Boot 1.1.4: Changes for U-Boot 1.1.4:
====================================================================== ======================================================================
* Fix problem in ppc4xx eth-driver without ethaddr (only without
CONFIG_NET_MULTI set)
Patch by Stefan Roese, 10 Oct 2005
* Fix gzip bmp support (test if malloc fails, warning when truncated). * Fix gzip bmp support (test if malloc fails, warning when truncated).
Increase CFG_VIDEO_LOGO_MAX_SIZE on HH405 board. Increase CFG_VIDEO_LOGO_MAX_SIZE on HH405 board.
Patch by Stefan Roese, 07 Oct 2005 Patch by Stefan Roese, 07 Oct 2005

View File

@ -139,7 +139,7 @@
static uint32_t mal_ier; static uint32_t mal_ier;
#if !defined(CONFIG_NET_MULTI) #if !defined(CONFIG_NET_MULTI)
struct eth_device *emac0_dev; struct eth_device *emac0_dev = NULL;
#endif #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 */ /* before doing anything, figure out if we have a MAC address */
/* if not, bail */ /* 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; return -1;
}
#if defined(CONFIG_440GX) #if defined(CONFIG_440GX)
/* Need to get the OPB frequency so we can access the PHY */ /* 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) int eth_init (bd_t *bis)
{ {
ppc_4xx_eth_initialize(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) int eth_send(volatile void *packet, int length)
{ {
return (ppc_4xx_eth_send(emac0_dev, packet, length)); return (ppc_4xx_eth_send(emac0_dev, packet, length));
} }