diff --git a/drivers/net/fec_imx.c b/drivers/net/fec_imx.c index f6065aa..21ce38c 100644 --- a/drivers/net/fec_imx.c +++ b/drivers/net/fec_imx.c @@ -644,7 +644,6 @@ dev->priv = fec; edev->priv = fec; edev->open = fec_open; - edev->init = fec_init; edev->send = fec_send; edev->recv = fec_recv; edev->halt = fec_halt; @@ -685,6 +684,8 @@ fec->xcv_type = pdata->xcv_type; + fec_init(edev); + if (fec->xcv_type != SEVENWIRE) { fec->phy_init = pdata->phy_init; fec->miibus.read = fec_miibus_read; diff --git a/net/eth.c b/net/eth.c index f3d7bfe..2cfdb96 100644 --- a/net/eth.c +++ b/net/eth.c @@ -269,7 +269,8 @@ dev_add_param(dev, "netmask", eth_set_ipaddr, NULL, 0); dev_add_param(dev, "serverip", eth_set_ipaddr, NULL, 0); - edev->init(edev); + if (edev->init) + edev->init(edev); list_add_tail(&edev->list, &netdev_list);