This value is not used by the network stack and is available in the
global data, so stop passing it around. For the one legacy function
that still expects it (init op on old Ethernet drivers) pass in the
global pointer version directly to avoid changing that interface.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Reported-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
(Trival fix to remove an unneeded variable declaration in 4xx_enet.c)
21 files changed:
if (!dev_valid_net(cookie))
return API_ENODEV;
if (!dev_valid_net(cookie))
return API_ENODEV;
- if (eth_init(gd->bd) < 0)
return API_EIO;
return 0;
return API_EIO;
return 0;
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
#endif
#ifdef CONFIG_GENERIC_ATMEL_MCI
#endif
#ifdef CONFIG_GENERIC_ATMEL_MCI
#if defined(CONFIG_CMD_NET)
puts("Net: ");
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
#if defined(CONFIG_CMD_NET)
puts("NET: ");
#if defined(CONFIG_CMD_NET)
puts("NET: ");
#if defined(CONFIG_CMD_NET)
WATCHDOG_RESET();
puts("Net: ");
#if defined(CONFIG_CMD_NET)
WATCHDOG_RESET();
puts("Net: ");
#endif
#if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R)
#endif
#if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R)
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
#endif
#if defined(CONFIG_CMD_NET)
puts("Net: ");
- eth_initialize(gd->bd);
#endif /* CONFIG_CMD_NET */
while (1) {
#endif /* CONFIG_CMD_NET */
while (1) {
#if defined(CONFIG_CMD_NET)
WATCHDOG_RESET();
puts("Net: ");
#if defined(CONFIG_CMD_NET)
WATCHDOG_RESET();
puts("Net: ");
#endif
#if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R)
#endif
#if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R)
void reset_phy(void)
{
udelay(10000);
void reset_phy(void)
{
udelay(10000);
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
miiphy_write(devname, 0, MII_BMCR, BMCR_RESET);
}
/* Sync environment with network devices, needed for nfsroot. */
miiphy_write(devname, 0, MII_BMCR, BMCR_RESET);
}
/* Sync environment with network devices, needed for nfsroot. */
- return eth_init(gd->bd);
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
* Initialize ethernet HW addr prior to starting Linux,
* needed for nfsroot
*/
static int initr_net(void)
{
puts("Net: ");
static int initr_net(void)
{
puts("Net: ");
- eth_initialize(gd->bd);
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
#if defined(CONFIG_RESET_PHY_R)
debug("Reset Ethernet PHY\n");
reset_phy();
env_relocate();
setenv("autoload", "yes");
load_addr = CONFIG_SYS_TEXT_BASE - sizeof(struct image_header);
env_relocate();
setenv("autoload", "yes");
load_addr = CONFIG_SYS_TEXT_BASE - sizeof(struct image_header);
- rv = eth_initialize(gd->bd);
if (rv == 0) {
printf("No Ethernet devices found\n");
hang();
if (rv == 0) {
printf("No Ethernet devices found\n");
hang();
unsigned long uic, unsigned long maldef,
unsigned long mal_errr)
{
unsigned long uic, unsigned long maldef,
unsigned long mal_errr)
{
- EMAC_4XX_HW_PST hw_p = dev->priv;
-
mtdcr (MAL0_ESR, isr); /* clear interrupt */
/* clear DE interrupt */
mtdcr (MAL0_ESR, isr); /* clear interrupt */
/* clear DE interrupt */
mtdcr (MAL0_RXDEIR, 0x80000000);
#ifdef INFO_4XX_ENET
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);
- eth_init (hw_p->bis); /* start again... */
+ eth_init(); /* start again... */
}
/*-----------------------------------------------------------------------------+
}
/*-----------------------------------------------------------------------------+
if (eth->state != ETH_STATE_ACTIVE) {
if (eth_is_on_demand_init()) {
if (eth->state != ETH_STATE_ACTIVE) {
if (eth_is_on_demand_init()) {
- if (eth_init(gd->bd) < 0)
return;
eth_set_last_protocol(NETCONS);
} else
return;
eth_set_last_protocol(NETCONS);
} else
- eth_init_state_only(gd->bd);
-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;
{
eth_get_dev()->state = ETH_STATE_ACTIVE;
int usb_eth_initialize(bd_t *bi);
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 */
void eth_try_another(int first_restart); /* Change the device */
void eth_set_current(void); /* set nterface to ethcur var */
int eth_getenv_enetaddr_by_index(const char *base_name, int index,
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
int eth_send(void *packet, int length); /* Send a packet */
#ifdef CONFIG_API
#include <phy.h>
#include <asm/errno.h>
#include <phy.h>
#include <asm/errno.h>
+DECLARE_GLOBAL_DATA_PTR;
+
void eth_parse_enetaddr(const char *addr, uchar *enetaddr)
{
char *end;
void eth_parse_enetaddr(const char *addr, uchar *enetaddr)
{
char *end;
-int eth_initialize(bd_t *bis)
+int eth_initialize(void)
{
int num_devices = 0;
eth_devices = NULL;
{
int num_devices = 0;
eth_devices = NULL;
* If not, call a CPU-specific one
*/
if (board_eth_init != __def_eth_init) {
* 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) {
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");
printf("CPU Net Initialization Failed\n");
} else
printf("Net Initialization Skipped\n");
{
struct eth_device *old_current, *dev;
{
struct eth_device *old_current, *dev;
do {
debug("Trying %s\n", eth_current->name);
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;
eth_current->state = ETH_STATE_ACTIVE;
return 0;
int NetLoop(enum proto_t protocol)
{
int NetLoop(enum proto_t protocol)
{
int ret = -1;
NetRestarted = 0;
int ret = -1;
NetRestarted = 0;
if (eth_is_on_demand_init() || protocol != NETCONS) {
eth_halt();
eth_set_current();
if (eth_is_on_demand_init() || protocol != NETCONS) {
eth_halt();
eth_set_current();
- if (eth_init(bd) < 0) {
eth_halt();
return -1;
}
} else
eth_halt();
return -1;
}
} else
- eth_init_state_only(bd);
restart:
#ifdef CONFIG_USB_KEYBOARD
restart:
#ifdef CONFIG_USB_KEYBOARD
#if !defined(CONFIG_NET_DO_NOT_TRY_ANOTHER)
eth_try_another(!NetRestarted);
#endif
#if !defined(CONFIG_NET_DO_NOT_TRY_ANOTHER)
eth_try_another(!NetRestarted);
#endif
if (NetRestartWrap) {
NetRestartWrap = 0;
if (NetDevExists) {
if (NetRestartWrap) {
NetRestartWrap = 0;
if (NetDevExists) {