From mboxrd@z Thu Jan 1 00:00:00 1970 From: Fugang Duan Subject: [PATCH v3 net,stable 2/2] net: fec: defer probe if regulator is not ready Date: Thu, 4 Jan 2018 10:15:29 +0800 Message-ID: <1515032129-7899-3-git-send-email-fugang.duan@nxp.com> References: <1515032129-7899-1-git-send-email-fugang.duan@nxp.com> Mime-Version: 1.0 Content-Type: text/plain Cc: , , , To: , Return-path: Received: from mail-bn3nam01on0073.outbound.protection.outlook.com ([104.47.33.73]:21105 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751975AbeADCTY (ORCPT ); Wed, 3 Jan 2018 21:19:24 -0500 In-Reply-To: <1515032129-7899-1-git-send-email-fugang.duan@nxp.com> Sender: netdev-owner@vger.kernel.org List-ID: 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 --- drivers/net/ethernet/freescale/fec_main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c index 732a8e3..a32fbf5 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; } -- 1.9.1