]>
Commit | Line | Data |
---|---|---|
eadbac20 SL |
1 | From a03f161bebeaa26a70ec5c4ec1e1f418d8cd925b Mon Sep 17 00:00:00 2001 |
2 | From: Ioana Ciornei <ioana.ciornei@nxp.com> | |
3 | Date: Fri, 9 Nov 2018 15:26:46 +0000 | |
4 | Subject: dpaa2-ptp: defer probe when portal allocation failed | |
5 | ||
6 | [ Upstream commit 5500598abbfb5b46201b9768bd9ea873a5eeaece ] | |
7 | ||
8 | The fsl_mc_portal_allocate can fail when the requested MC portals are | |
9 | not yet probed by the fsl_mc_allocator. In this situation, the driver | |
10 | should defer the probe. | |
11 | ||
12 | Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com> | |
13 | Signed-off-by: David S. Miller <davem@davemloft.net> | |
14 | Signed-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 | ||
19 | diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-ptp.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-ptp.c | |
20 | index 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 | -- | |
36 | 2.19.1 | |
37 |