From: Fugang Duan Date: Wed, 3 Jan 2018 02:39:30 +0000 (+0800) Subject: net: fec: defer probe if regulator is not ready X-Git-Tag: v4.14.14~79 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=e7e73b10d690c5352cb11b1941a09e4f3dc4c8ce;p=users%2Fjedix%2Flinux-maple.git net: fec: defer probe if regulator is not ready [ Upstream commit 3f38c683033a9a0a2738e7067f449deefabfa3ef ] 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 Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c index 2250639beef0..768f031a27d8 100644 --- a/drivers/net/ethernet/freescale/fec_main.c +++ b/drivers/net/ethernet/freescale/fec_main.c @@ -3458,6 +3458,10 @@ fec_probe(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; }