[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1514887064-3896-1-git-send-email-fugang.duan@nxp.com>
Date: Tue, 2 Jan 2018 17:57:44 +0800
From: Fugang Duan <fugang.duan@....com>
To: <davem@...emloft.net>
CC: <netdev@...r.kernel.org>, <troy.kisky@...ndarydevices.com>,
<andrew@...n.ch>, <fugang.duan@....com>
Subject: [PATCH net,stable 1/1] net: fec: defer probe if regulator is not ready
Defer probe if regulator is not ready. E.g. some regulator is fixed
regulator controlled by i2c expander gpio, the i2c device may be probed
after the driver, then it should handle the case of defer probe error.
Signed-off-by: Fugang Duan <fugang.duan@....com>
---
drivers/net/ethernet/freescale/fec_main.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index e17d10b..feed383 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -3489,6 +3489,10 @@ static int fec_enet_get_irq_cnt(struct platform_device *pdev)
goto failed_regulator;
}
} else {
+ if (PTR_ERR(fep->reg_phy) == -EPROBE_DEFER) {
+ ret = -EPROBE_DEFER;
+ goto failed_regulator;
+ }
fep->reg_phy = NULL;
}
@@ -3576,6 +3580,7 @@ static int fec_enet_get_irq_cnt(struct platform_device *pdev)
of_node_put(phy_node);
failed_ioremap:
free_netdev(ndev);
+ dev_id--;
return ret;
}
--
1.9.1
Powered by blists - more mailing lists