@@ -37,7 +37,7 @@ int dev_open_net(void *cookie)
if (!dev_valid_net(cookie))
return API_ENODEV;
- if (eth_init(gd->bd) < 0)
+ if (eth_init() < 0)
return API_EIO;
return 0;
@@ -644,7 +644,7 @@ void board_init_r(gd_t *id, ulong dest_addr)
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
+ eth_initialize();
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
@@ -244,7 +244,7 @@ void board_init_r(gd_t *new_gd, ulong dest_addr)
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
+ eth_initialize();
#endif
#ifdef CONFIG_GENERIC_ATMEL_MCI
@@ -566,10 +566,10 @@ void board_init_r (gd_t *id, ulong dest_addr)
#if defined(CONFIG_CMD_NET)
WATCHDOG_RESET();
#if defined(FEC_ENET)
- eth_init(bd);
+ eth_init();
#endif
puts ("Net: ");
- eth_initialize (bd);
+ eth_initialize();
#endif
#ifdef CONFIG_POST
@@ -383,7 +383,7 @@ void board_init_r(gd_t *id, ulong dest_addr)
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
+ eth_initialize();
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
@@ -128,7 +128,7 @@ void board_init(void)
#if defined(CONFIG_CMD_NET)
puts("NET: ");
- eth_initialize(bd);
+ eth_initialize();
#endif
/* main_loop */
@@ -890,7 +890,7 @@ void board_init_r(gd_t *id, ulong dest_addr)
#if defined(CONFIG_CMD_NET)
WATCHDOG_RESET();
puts("Net: ");
- eth_initialize(bd);
+ eth_initialize();
#endif
#if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R)
@@ -178,7 +178,7 @@ void sh_generic_init(void)
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
+ eth_initialize();
#endif /* CONFIG_CMD_NET */
while (1) {
@@ -351,7 +351,7 @@ void board_init_f(ulong bootflag)
#if defined(CONFIG_CMD_NET)
WATCHDOG_RESET();
puts("Net: ");
- eth_initialize(bd);
+ eth_initialize();
#endif
#if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R)
@@ -111,7 +111,7 @@ int misc_init_r(void)
void reset_phy(void)
{
udelay(10000);
- eth_init(gd->bd);
+ eth_init();
}
#endif
@@ -280,7 +280,7 @@ void reset_phy(void)
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
- eth_init(gd->bd);
+ eth_init();
#endif
}
#endif
@@ -275,7 +275,7 @@ void reset_phy(void)
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
- eth_init(gd->bd);
+ eth_init();
#endif
}
#endif
@@ -204,7 +204,7 @@ int board_eth_init(bd_t *bis)
miiphy_write(devname, 0, MII_BMCR, BMCR_RESET);
}
/* Sync environment with network devices, needed for nfsroot. */
- return eth_init(gd->bd);
+ return eth_init();
}
#endif
@@ -288,7 +288,7 @@ void reset_phy(void)
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
- eth_init(gd->bd);
+ eth_init();
#endif
}
#endif
@@ -166,7 +166,7 @@ void reset_phy(void)
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
- eth_init(gd->bd);
+ eth_init();
#endif
}
#endif
@@ -585,7 +585,7 @@ static int initr_bbmii(void)
static int initr_net(void)
{
puts("Net: ");
- eth_initialize(gd->bd);
+ eth_initialize();
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
@@ -21,7 +21,7 @@ void spl_net_load_image(const char *device)
env_relocate();
setenv("autoload", "yes");
load_addr = CONFIG_SYS_TEXT_BASE - sizeof(struct image_header);
- rv = eth_initialize(gd->bd);
+ rv = eth_initialize();
if (rv == 0) {
printf("No Ethernet devices found\n");
hang();
@@ -1728,10 +1728,11 @@ static void mal_err (struct eth_device *dev, unsigned long isr,
mtdcr (MAL0_RXDEIR, 0x80000000);
#ifdef INFO_4XX_ENET
- printf ("\nMAL error occured.... ISR = %lx UIC = = %lx MAL_DEF = %lx MAL_ERR= %lx \n", isr, uic, maldef, mal_errr);
+ printf("\nMAL error occured.... ISR = %lx UIC = = %lx MAL_DEF = %lx MAL_ERR= %lx\n",
+ isr, uic, maldef, mal_errr);
#endif
- eth_init (hw_p->bis); /* start again... */
+ eth_init(); /* start again... */
}
/*-----------------------------------------------------------------------------+
@@ -193,11 +193,11 @@ static void nc_send_packet(const char *buf, int len)
if (eth->state != ETH_STATE_ACTIVE) {
if (eth_is_on_demand_init()) {
- if (eth_init(gd->bd) < 0)
+ if (eth_init() < 0)
return;
eth_set_last_protocol(NETCONS);
} else
- eth_init_state_only(gd->bd);
+ eth_init_state_only();
inited = 1;
}
@@ -119,7 +119,7 @@ static inline unsigned char *eth_get_ethaddr(void)
}
/* Set active state */
-static inline __attribute__((always_inline)) int eth_init_state_only(bd_t *bis)
+static inline __attribute__((always_inline)) int eth_init_state_only(void)
{
eth_get_dev()->state = ETH_STATE_ACTIVE;
@@ -145,7 +145,7 @@ int eth_write_hwaddr(struct eth_device *dev, const char *base_name,
int usb_eth_initialize(bd_t *bi);
-int eth_initialize(bd_t *bis); /* Initialize network subsystem */
+int eth_initialize(void); /* Initialize network subsystem */
void eth_try_another(int first_restart); /* Change the device */
void eth_set_current(void); /* set nterface to ethcur var */
@@ -166,7 +166,7 @@ int eth_setenv_enetaddr(char *name, const uchar *enetaddr);
int eth_getenv_enetaddr_by_index(const char *base_name, int index,
uchar *enetaddr);
-int eth_init(bd_t *bis); /* Initialize the device */
+int eth_init(void); /* Initialize the device */
int eth_send(void *packet, int length); /* Send a packet */
#ifdef CONFIG_API
@@ -12,6 +12,8 @@
#include <phy.h>
#include <asm/errno.h>
+DECLARE_GLOBAL_DATA_PTR;
+
void eth_parse_enetaddr(const char *addr, uchar *enetaddr)
{
char *end;
@@ -250,7 +252,7 @@ int eth_unregister(struct eth_device *dev)
return 0;
}
-int eth_initialize(bd_t *bis)
+int eth_initialize(void)
{
int num_devices = 0;
eth_devices = NULL;
@@ -272,10 +274,10 @@ int eth_initialize(bd_t *bis)
* If not, call a CPU-specific one
*/
if (board_eth_init != __def_eth_init) {
- if (board_eth_init(bis) < 0)
+ if (board_eth_init(gd->bd) < 0)
printf("Board Net Initialization Failed\n");
} else if (cpu_eth_init != __def_eth_init) {
- if (cpu_eth_init(bis) < 0)
+ if (cpu_eth_init(gd->bd) < 0)
printf("CPU Net Initialization Failed\n");
} else
printf("Net Initialization Skipped\n");
@@ -362,7 +364,7 @@ u32 ether_crc(size_t len, unsigned char const *p)
#endif
-int eth_init(bd_t *bis)
+int eth_init(void)
{
struct eth_device *old_current, *dev;
@@ -387,7 +389,7 @@ int eth_init(bd_t *bis)
do {
debug("Trying %s\n", eth_current->name);
- if (eth_current->init(eth_current, bis) >= 0) {
+ if (eth_current->init(eth_current, gd->bd) >= 0) {
eth_current->state = ETH_STATE_ACTIVE;
return 0;
@@ -324,7 +324,6 @@ void net_init(void)
int NetLoop(enum proto_t protocol)
{
- bd_t *bd = gd->bd;
int ret = -1;
NetRestarted = 0;
@@ -337,12 +336,12 @@ int NetLoop(enum proto_t protocol)
if (eth_is_on_demand_init() || protocol != NETCONS) {
eth_halt();
eth_set_current();
- if (eth_init(bd) < 0) {
+ if (eth_init() < 0) {
eth_halt();
return -1;
}
} else
- eth_init_state_only(bd);
+ eth_init_state_only();
restart:
#ifdef CONFIG_USB_KEYBOARD
@@ -618,7 +617,7 @@ void NetStartAgain(void)
#if !defined(CONFIG_NET_DO_NOT_TRY_ANOTHER)
eth_try_another(!NetRestarted);
#endif
- eth_init(gd->bd);
+ eth_init();
if (NetRestartWrap) {
NetRestartWrap = 0;
if (NetDevExists) {