From b7ed4d8fa925c5c686b771027ec35efb1d9e4be1 Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Fri, 27 Feb 2009 16:35:05 +0100 Subject: fec: fail on open when autonegotiation fails Signed-off-by: Sascha Hauer --- drivers/net/fec_imx.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/net/fec_imx.c b/drivers/net/fec_imx.c index 8093d48765..f75ab42886 100644 --- a/drivers/net/fec_imx.c +++ b/drivers/net/fec_imx.c @@ -328,6 +328,7 @@ static int fec_init(struct eth_device *dev) static int fec_open(struct eth_device *edev) { struct fec_priv *fec = (struct fec_priv *)edev->priv; + int ret; /* full-duplex, heartbeat disabled */ writel(1 << 2, fec->regs + FEC_X_CNTRL); @@ -343,7 +344,9 @@ static int fec_open(struct eth_device *edev) fec_rx_task_enable(fec); if (fec->xcv_type != SEVENWIRE) { - miiphy_wait_aneg(&fec->miiphy); + ret = miiphy_wait_aneg(&fec->miiphy); + if (ret) + return ret; miiphy_print_status(&fec->miiphy); } -- cgit v1.2.3