summaryrefslogtreecommitdiff
path: root/drivers/hwtracing
diff options
context:
space:
mode:
authorMathieu Poirier <mathieu.poirier@linaro.org>2016-08-25 21:19:01 (GMT)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-08-31 11:05:42 (GMT)
commit62d39ac934daaaecc716d651809b18da8ac255b0 (patch)
tree5c058d830c2f36d62b0d63accedfce03d1593c4e /drivers/hwtracing
parent67337e8d8dc44ceb720a1ba5d1f2ff230a53a888 (diff)
downloadlinux-62d39ac934daaaecc716d651809b18da8ac255b0.tar.xz
coresight: delay initialisation when children are missing
Depending on when CoreSight device are discovered it is possible that some IP block may be referencing devices that have not been added to the bus yet. The end result is missing nodes in the CoreSight topology even when the devices are present and properly initialised. This patch solves the problem by asking the driver core to try initialising the device at a later time when the children of a CoreSight node are missing. Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hwtracing')
-rw-r--r--drivers/hwtracing/coresight/of_coresight.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/hwtracing/coresight/of_coresight.c b/drivers/hwtracing/coresight/of_coresight.c
index b68da18..18f1c8c 100644
--- a/drivers/hwtracing/coresight/of_coresight.c
+++ b/drivers/hwtracing/coresight/of_coresight.c
@@ -166,7 +166,7 @@ struct coresight_platform_data *of_get_coresight_platform_data(
rdev = of_coresight_get_endpoint_device(rparent);
if (!rdev)
- continue;
+ return ERR_PTR(-EPROBE_DEFER);
pdata->child_names[i] = dev_name(rdev);
pdata->child_ports[i] = rendpoint.id;