summaryrefslogtreecommitdiff
path: root/drivers/net/fm/eth.c
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2012-07-12 08:23:58 +0200
committerWolfgang Denk <wd@denx.de>2012-07-12 08:23:58 +0200
commit0878222fed3fafbfd0b1f2e5a6b2da90a81e910d (patch)
treef88ba4ad1c5f06e6a772d5062c526d8153a71678 /drivers/net/fm/eth.c
parent0b15d51ed07db4c318d9c6b02b394ba5a3bc4296 (diff)
parent154177e14a141468374f438ed3096ab097b79976 (diff)
downloadu-boot-imx-0878222fed3fafbfd0b1f2e5a6b2da90a81e910d.zip
u-boot-imx-0878222fed3fafbfd0b1f2e5a6b2da90a81e910d.tar.gz
u-boot-imx-0878222fed3fafbfd0b1f2e5a6b2da90a81e910d.tar.bz2
Merge branch 'next' of git://git.denx.de/u-boot-net into next
* 'next' of git://git.denx.de/u-boot-net: net: Inline the new eth_setenv_enetaddr_by_index function net: allow setting env enetaddr from net device setting net/designware: Consecutive writes to the same register to be avoided CACHE: net: asix: Fix asix driver to work with data cache on net: phy: micrel: make ksz9021 phy accessible net: abort network initialization if the PHY driver fails phylib: phy_startup() should return an error code on failure net: tftp: fix type of block arg to store_block Signed-off-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'drivers/net/fm/eth.c')
-rw-r--r--drivers/net/fm/eth.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/net/fm/eth.c b/drivers/net/fm/eth.c
index f34f4db..2b616ad 100644
--- a/drivers/net/fm/eth.c
+++ b/drivers/net/fm/eth.c
@@ -363,6 +363,9 @@ static int fm_eth_open(struct eth_device *dev, bd_t *bd)
{
struct fm_eth *fm_eth;
struct fsl_enet_mac *mac;
+#ifdef CONFIG_PHYLIB
+ int ret;
+#endif
fm_eth = (struct fm_eth *)dev->priv;
mac = fm_eth->mac;
@@ -384,7 +387,11 @@ static int fm_eth_open(struct eth_device *dev, bd_t *bd)
fmc_tx_port_graceful_stop_disable(fm_eth);
#ifdef CONFIG_PHYLIB
- phy_startup(fm_eth->phydev);
+ ret = phy_startup(fm_eth->phydev);
+ if (ret) {
+ printf("%s: Could not initialize\n", fm_eth->phydev->dev->name);
+ return ret;
+ }
#else
fm_eth->phydev->speed = SPEED_1000;
fm_eth->phydev->link = 1;