summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/pl111/pl111_versatile.c
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2019-05-20 08:32:11 -0700
committerTony Lindgren <tony@atomide.com>2019-05-20 08:32:11 -0700
commitf29f24b5568fd6169e0363c78f1a80db38d0e7e9 (patch)
tree835abaf6e1bb95b9d388f4249f355618e9da1489 /drivers/gpu/drm/pl111/pl111_versatile.c
parent1ba12322e2f0934383f111a5e695702aaf46b812 (diff)
parent34b1b8061de3215208db9accfe60cc3f5b40178f (diff)
downloadtalos-op-linux-f29f24b5568fd6169e0363c78f1a80db38d0e7e9.tar.gz
talos-op-linux-f29f24b5568fd6169e0363c78f1a80db38d0e7e9.zip
Merge branch 'fixes-dra7' into fixes
Diffstat (limited to 'drivers/gpu/drm/pl111/pl111_versatile.c')
-rw-r--r--drivers/gpu/drm/pl111/pl111_versatile.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/pl111/pl111_versatile.c b/drivers/gpu/drm/pl111/pl111_versatile.c
index b9baefdba38a..1c318ad32a8c 100644
--- a/drivers/gpu/drm/pl111/pl111_versatile.c
+++ b/drivers/gpu/drm/pl111/pl111_versatile.c
@@ -330,6 +330,7 @@ int pl111_versatile_init(struct device *dev, struct pl111_drm_dev_private *priv)
ret = vexpress_muxfpga_init();
if (ret) {
dev_err(dev, "unable to initialize muxfpga driver\n");
+ of_node_put(np);
return ret;
}
@@ -337,17 +338,20 @@ int pl111_versatile_init(struct device *dev, struct pl111_drm_dev_private *priv)
pdev = of_find_device_by_node(np);
if (!pdev) {
dev_err(dev, "can't find the sysreg device, deferring\n");
+ of_node_put(np);
return -EPROBE_DEFER;
}
map = dev_get_drvdata(&pdev->dev);
if (!map) {
dev_err(dev, "sysreg has not yet probed\n");
platform_device_put(pdev);
+ of_node_put(np);
return -EPROBE_DEFER;
}
} else {
map = syscon_node_to_regmap(np);
}
+ of_node_put(np);
if (IS_ERR(map)) {
dev_err(dev, "no Versatile syscon regmap\n");
OpenPOWER on IntegriCloud