]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/4.20.8/dpaa2-ptp-defer-probe-when-portal-allocation-failed.patch
Linux 4.20.8
[thirdparty/kernel/stable-queue.git] / releases / 4.20.8 / dpaa2-ptp-defer-probe-when-portal-allocation-failed.patch
CommitLineData
eadbac20
SL
1From a03f161bebeaa26a70ec5c4ec1e1f418d8cd925b Mon Sep 17 00:00:00 2001
2From: Ioana Ciornei <ioana.ciornei@nxp.com>
3Date: Fri, 9 Nov 2018 15:26:46 +0000
4Subject: dpaa2-ptp: defer probe when portal allocation failed
5
6[ Upstream commit 5500598abbfb5b46201b9768bd9ea873a5eeaece ]
7
8The fsl_mc_portal_allocate can fail when the requested MC portals are
9not yet probed by the fsl_mc_allocator. In this situation, the driver
10should defer the probe.
11
12Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
13Signed-off-by: David S. Miller <davem@davemloft.net>
14Signed-off-by: Sasha Levin <sashal@kernel.org>
15---
16 drivers/net/ethernet/freescale/dpaa2/dpaa2-ptp.c | 5 ++++-
17 1 file changed, 4 insertions(+), 1 deletion(-)
18
19diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-ptp.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-ptp.c
20index 84b942b1eccc..9b150db3b510 100644
21--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-ptp.c
22+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-ptp.c
23@@ -140,7 +140,10 @@ static int dpaa2_ptp_probe(struct fsl_mc_device *mc_dev)
24
25 err = fsl_mc_portal_allocate(mc_dev, 0, &mc_dev->mc_io);
26 if (err) {
27- dev_err(dev, "fsl_mc_portal_allocate err %d\n", err);
28+ if (err == -ENXIO)
29+ err = -EPROBE_DEFER;
30+ else
31+ dev_err(dev, "fsl_mc_portal_allocate err %d\n", err);
32 goto err_exit;
33 }
34
35--
362.19.1
37