summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/imx/dcss/dcss-dev.c
diff options
context:
space:
mode:
authorLiang He <windhl@126.com>2022-07-14 16:13:37 +0800
committerLaurentiu Palcu <laurentiu.palcu@oss.nxp.com>2022-07-20 10:12:15 +0300
commit02c87df2480ac855d88ee308ce3fa857d9bd55a8 (patch)
tree459e1f781c90813b8808ab4f8ad40b6697f87b10 /drivers/gpu/drm/imx/dcss/dcss-dev.c
parentef2084a8388b19c8812356106e0c8d29915f9d8b (diff)
drm/imx/dcss: Add missing of_node_put() in fail path
In dcss_dev_create() and dcss_dev_destroy(), we should call of_node_put() in fail path or before the dcss's destroy as of_graph_get_port_by_id() has increased the refcount. Fixes: 9021c317b770 ("drm/imx: Add initial support for DCSS on iMX8MQ") Signed-off-by: Liang He <windhl@126.com> Reviewed-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com> Signed-off-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220714081337.374761-1-windhl@126.com
Diffstat (limited to 'drivers/gpu/drm/imx/dcss/dcss-dev.c')
-rw-r--r--drivers/gpu/drm/imx/dcss/dcss-dev.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/imx/dcss/dcss-dev.c b/drivers/gpu/drm/imx/dcss/dcss-dev.c
index c849533ca83e..3f5750cc2673 100644
--- a/drivers/gpu/drm/imx/dcss/dcss-dev.c
+++ b/drivers/gpu/drm/imx/dcss/dcss-dev.c
@@ -207,6 +207,7 @@ struct dcss_dev *dcss_dev_create(struct device *dev, bool hdmi_output)
ret = dcss_submodules_init(dcss);
if (ret) {
+ of_node_put(dcss->of_port);
dev_err(dev, "submodules initialization failed\n");
goto clks_err;
}
@@ -237,6 +238,8 @@ void dcss_dev_destroy(struct dcss_dev *dcss)
dcss_clocks_disable(dcss);
}
+ of_node_put(dcss->of_port);
+
pm_runtime_disable(dcss->dev);
dcss_submodules_stop(dcss);