mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-09 03:21:51 +00:00
Fix Ethernet init() return codes
Change return values of init() functions in all Ethernet drivers to conform to the following: >=0: Success <0: Failure All drivers going forward should return 0 on success. Current drivers that return 1 on success were left as-is to minimize changes. Signed-off-by: Ben Warren <biggerbadderben@gmail.com> Acked-by: Stefan Roese <sr@denx.de> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Acked-by: Kim Phillips <kim.phillips@freescale.com> Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com> Acked-By: Timur Tabi <timur@freescale.com>
This commit is contained in:
parent
d3a6532cbe
commit
422b1a0160
13 changed files with 28 additions and 27 deletions
|
@ -408,25 +408,25 @@ static int npe_init(struct eth_device *dev, bd_t * bis)
|
||||||
if (ixEthAccPortRxCallbackRegister(p_npe->eth_id, npe_rx_callback,
|
if (ixEthAccPortRxCallbackRegister(p_npe->eth_id, npe_rx_callback,
|
||||||
(u32)p_npe) != IX_ETH_ACC_SUCCESS) {
|
(u32)p_npe) != IX_ETH_ACC_SUCCESS) {
|
||||||
printf("can't register RX callback!\n");
|
printf("can't register RX callback!\n");
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ixEthAccPortTxDoneCallbackRegister(p_npe->eth_id, npe_tx_callback,
|
if (ixEthAccPortTxDoneCallbackRegister(p_npe->eth_id, npe_tx_callback,
|
||||||
(u32)p_npe) != IX_ETH_ACC_SUCCESS) {
|
(u32)p_npe) != IX_ETH_ACC_SUCCESS) {
|
||||||
printf("can't register TX callback!\n");
|
printf("can't register TX callback!\n");
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
npe_set_mac_address(dev);
|
npe_set_mac_address(dev);
|
||||||
|
|
||||||
if (ixEthAccPortEnable(p_npe->eth_id) != IX_ETH_ACC_SUCCESS) {
|
if (ixEthAccPortEnable(p_npe->eth_id) != IX_ETH_ACC_SUCCESS) {
|
||||||
printf("can't enable port!\n");
|
printf("can't enable port!\n");
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
p_npe->active = 1;
|
p_npe->active = 1;
|
||||||
|
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0 /* test-only: probably have to deal with it when booting linux (for a clean state) */
|
#if 0 /* test-only: probably have to deal with it when booting linux (for a clean state) */
|
||||||
|
|
|
@ -727,7 +727,7 @@ static int fec_init (struct eth_device *dev, bd_t * bd)
|
||||||
|
|
||||||
if (efis->actual_phy_addr == -1) {
|
if (efis->actual_phy_addr == -1) {
|
||||||
printf ("Unable to discover phy!\n");
|
printf ("Unable to discover phy!\n");
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
efis->actual_phy_addr = -1;
|
efis->actual_phy_addr = -1;
|
||||||
|
@ -763,7 +763,7 @@ static int fec_init (struct eth_device *dev, bd_t * bd)
|
||||||
|
|
||||||
efis->initialized = 1;
|
efis->initialized = 1;
|
||||||
|
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -332,7 +332,7 @@ static int dc21x4x_init(struct eth_device* dev, bd_t* bis)
|
||||||
|
|
||||||
if ((INL(dev, DE4X5_STS) & (STS_TS | STS_RS)) != 0) {
|
if ((INL(dev, DE4X5_STS) & (STS_TS | STS_RS)) != 0) {
|
||||||
printf("Error: Cannot reset ethernet controller.\n");
|
printf("Error: Cannot reset ethernet controller.\n");
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_TULIP_SELECT_MEDIA
|
#ifdef CONFIG_TULIP_SELECT_MEDIA
|
||||||
|
@ -382,7 +382,7 @@ static int dc21x4x_init(struct eth_device* dev, bd_t* bis)
|
||||||
|
|
||||||
send_setup_frame(dev, bis);
|
send_setup_frame(dev, bis);
|
||||||
|
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int dc21x4x_send(struct eth_device* dev, volatile void *packet, int length)
|
static int dc21x4x_send(struct eth_device* dev, volatile void *packet, int length)
|
||||||
|
|
|
@ -485,7 +485,7 @@ int eepro100_initialize (bd_t * bis)
|
||||||
|
|
||||||
static int eepro100_init (struct eth_device *dev, bd_t * bis)
|
static int eepro100_init (struct eth_device *dev, bd_t * bis)
|
||||||
{
|
{
|
||||||
int i, status = 0;
|
int i, status = -1;
|
||||||
int tx_cur;
|
int tx_cur;
|
||||||
struct descriptor *ias_cmd, *cfg_cmd;
|
struct descriptor *ias_cmd, *cfg_cmd;
|
||||||
|
|
||||||
|
@ -598,7 +598,7 @@ static int eepro100_init (struct eth_device *dev, bd_t * bis)
|
||||||
goto Done;
|
goto Done;
|
||||||
}
|
}
|
||||||
|
|
||||||
status = 1;
|
status = 0;
|
||||||
|
|
||||||
Done:
|
Done:
|
||||||
return status;
|
return status;
|
||||||
|
|
|
@ -423,12 +423,12 @@ static int macb_init(struct eth_device *netdev, bd_t *bd)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (!macb_phy_init(macb))
|
if (!macb_phy_init(macb))
|
||||||
return 0;
|
return -1;
|
||||||
|
|
||||||
/* Enable TX and RX */
|
/* Enable TX and RX */
|
||||||
macb_writel(macb, NCR, MACB_BIT(TE) | MACB_BIT(RE));
|
macb_writel(macb, NCR, MACB_BIT(TE) | MACB_BIT(RE));
|
||||||
|
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void macb_halt(struct eth_device *netdev)
|
static void macb_halt(struct eth_device *netdev)
|
||||||
|
|
|
@ -402,7 +402,7 @@ static int pcnet_init(struct eth_device* dev, bd_t *bis)
|
||||||
if (i <= 0) {
|
if (i <= 0) {
|
||||||
printf("%s: TIMEOUT: controller init failed\n", dev->name);
|
printf("%s: TIMEOUT: controller init failed\n", dev->name);
|
||||||
pcnet_reset (dev);
|
pcnet_reset (dev);
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -410,7 +410,7 @@ static int pcnet_init(struct eth_device* dev, bd_t *bis)
|
||||||
*/
|
*/
|
||||||
pcnet_write_csr (dev, 0, 0x0002);
|
pcnet_write_csr (dev, 0, 0x0002);
|
||||||
|
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int pcnet_send(struct eth_device* dev, volatile void *packet, int pkt_len)
|
static int pcnet_send(struct eth_device* dev, volatile void *packet, int pkt_len)
|
||||||
|
|
|
@ -273,10 +273,10 @@ static int rtl8139_probe(struct eth_device *dev, bd_t *bis)
|
||||||
|
|
||||||
if (inb(ioaddr + MediaStatus) & MSRLinkFail) {
|
if (inb(ioaddr + MediaStatus) & MSRLinkFail) {
|
||||||
printf("Cable not connected or other link failure\n");
|
printf("Cable not connected or other link failure\n");
|
||||||
return(0);
|
return -1 ;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Serial EEPROM section. */
|
/* Serial EEPROM section. */
|
||||||
|
|
|
@ -624,7 +624,7 @@ static void rtl8169_init_ring(struct eth_device *dev)
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
RESET - Finish setting up the ethernet interface
|
RESET - Finish setting up the ethernet interface
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
static void rtl_reset(struct eth_device *dev, bd_t *bis)
|
static int rtl_reset(struct eth_device *dev, bd_t *bis)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
@ -660,6 +660,7 @@ static void rtl_reset(struct eth_device *dev, bd_t *bis)
|
||||||
#ifdef DEBUG_RTL8169
|
#ifdef DEBUG_RTL8169
|
||||||
printf ("%s elapsed time : %d\n", __FUNCTION__, currticks()-stime);
|
printf ("%s elapsed time : %d\n", __FUNCTION__, currticks()-stime);
|
||||||
#endif
|
#endif
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
|
|
|
@ -232,7 +232,7 @@ int tsec_init(struct eth_device *dev, bd_t * bd)
|
||||||
startup_tsec(dev);
|
startup_tsec(dev);
|
||||||
|
|
||||||
/* If there's no link, fail */
|
/* If there's no link, fail */
|
||||||
return priv->link;
|
return (priv->link ? 0 : -1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -792,7 +792,7 @@ static int tsi108_eth_probe (struct eth_device *dev, bd_t * bis)
|
||||||
(dev->enetaddr[0] << 16);
|
(dev->enetaddr[0] << 16);
|
||||||
|
|
||||||
if (marvell_88e_phy_config(dev, &speed, &duplex) == 0)
|
if (marvell_88e_phy_config(dev, &speed, &duplex) == 0)
|
||||||
return 0;
|
return -1;
|
||||||
|
|
||||||
value =
|
value =
|
||||||
MAC_CONFIG_2_PREAMBLE_LENGTH(7) | MAC_CONFIG_2_PAD_CRC |
|
MAC_CONFIG_2_PREAMBLE_LENGTH(7) | MAC_CONFIG_2_PAD_CRC |
|
||||||
|
@ -864,7 +864,7 @@ static int tsi108_eth_probe (struct eth_device *dev, bd_t * bis)
|
||||||
/* enable TX queue */
|
/* enable TX queue */
|
||||||
reg_TX_CONTROL(base) = TX_CONTROL_GO | 0x01;
|
reg_TX_CONTROL(base) = TX_CONTROL_GO | 0x01;
|
||||||
|
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -279,12 +279,12 @@ static int uli526x_init_one(struct eth_device *dev, bd_t *bis)
|
||||||
db->desc_pool_ptr = (uchar *)&desc_pool_array[0];
|
db->desc_pool_ptr = (uchar *)&desc_pool_array[0];
|
||||||
db->desc_pool_dma_ptr = (dma_addr_t)&desc_pool_array[0];
|
db->desc_pool_dma_ptr = (dma_addr_t)&desc_pool_array[0];
|
||||||
if (db->desc_pool_ptr == NULL)
|
if (db->desc_pool_ptr == NULL)
|
||||||
return 0;
|
return -1;
|
||||||
|
|
||||||
db->buf_pool_ptr = &buf_pool[0];
|
db->buf_pool_ptr = &buf_pool[0];
|
||||||
db->buf_pool_dma_ptr = (dma_addr_t)&buf_pool[0];
|
db->buf_pool_dma_ptr = (dma_addr_t)&buf_pool[0];
|
||||||
if (db->buf_pool_ptr == NULL)
|
if (db->buf_pool_ptr == NULL)
|
||||||
return 0;
|
return -1;
|
||||||
|
|
||||||
db->first_tx_desc = (struct tx_desc *) db->desc_pool_ptr;
|
db->first_tx_desc = (struct tx_desc *) db->desc_pool_ptr;
|
||||||
db->first_tx_desc_dma = db->desc_pool_dma_ptr;
|
db->first_tx_desc_dma = db->desc_pool_dma_ptr;
|
||||||
|
@ -331,7 +331,7 @@ static int uli526x_init_one(struct eth_device *dev, bd_t *bis)
|
||||||
db->cr6_data |= ULI526X_TXTH_256;
|
db->cr6_data |= ULI526X_TXTH_256;
|
||||||
db->cr0_data = CR0_DEFAULT;
|
db->cr0_data = CR0_DEFAULT;
|
||||||
uli526x_init(dev);
|
uli526x_init(dev);
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void uli526x_disable(struct eth_device *dev)
|
static void uli526x_disable(struct eth_device *dev)
|
||||||
|
|
|
@ -1129,7 +1129,7 @@ static int uec_init(struct eth_device* dev, bd_t *bd)
|
||||||
if (dev->enetaddr[0] & 0x01) {
|
if (dev->enetaddr[0] & 0x01) {
|
||||||
printf("%s: MacAddress is multcast address\n",
|
printf("%s: MacAddress is multcast address\n",
|
||||||
__FUNCTION__);
|
__FUNCTION__);
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
uec_set_mac_address(uec, dev->enetaddr);
|
uec_set_mac_address(uec, dev->enetaddr);
|
||||||
uec->the_first_run = 1;
|
uec->the_first_run = 1;
|
||||||
|
@ -1138,10 +1138,10 @@ static int uec_init(struct eth_device* dev, bd_t *bd)
|
||||||
err = uec_open(uec, COMM_DIR_RX_AND_TX);
|
err = uec_open(uec, COMM_DIR_RX_AND_TX);
|
||||||
if (err) {
|
if (err) {
|
||||||
printf("%s: cannot enable UEC device\n", dev->name);
|
printf("%s: cannot enable UEC device\n", dev->name);
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
return uec->mii_info->link;
|
return (uec->mii_info->link ? 0 : -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void uec_halt(struct eth_device* dev)
|
static void uec_halt(struct eth_device* dev)
|
||||||
|
|
|
@ -433,7 +433,7 @@ int eth_init(bd_t *bis)
|
||||||
do {
|
do {
|
||||||
debug ("Trying %s\n", eth_current->name);
|
debug ("Trying %s\n", eth_current->name);
|
||||||
|
|
||||||
if (!eth_current->init(eth_current,bis)) {
|
if (eth_current->init(eth_current,bis) >= 0) {
|
||||||
eth_current->state = ETH_STATE_ACTIVE;
|
eth_current->state = ETH_STATE_ACTIVE;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue