summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2017-09-25 13:30:38 +0300
committerLinus Walleij <linus.walleij@linaro.org>2017-10-01 01:30:01 +0200
commit320e421ea303b1e53451b2b4cd3ad18cdd043b3b (patch)
treef96c37dbc6856664907432fe537b0ead59449c52
parent44390ef519006b13c8fab9eb13abac909342a585 (diff)
downloadlinux-320e421ea303b1e53451b2b4cd3ad18cdd043b3b.tar.bz2
drm: of: always initialize panel in drm_of_find_panel_or_bridge()
The callers expect "panel" to be initialized, but that isn't true if we return -ENODEV. It causes bugs like: drivers/gpu/drm/tve200/tve200_drv.c:83 tve200_modeset_init() error: uninitialized symbol 'panel'. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20170925103038.lvr5msjvekwczctn@mwanda
-rw-r--r--drivers/gpu/drm/drm_of.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_of.c b/drivers/gpu/drm/drm_of.c
index 8dafbdfcd2ea..4c191c050e7d 100644
--- a/drivers/gpu/drm/drm_of.c
+++ b/drivers/gpu/drm/drm_of.c
@@ -233,6 +233,8 @@ int drm_of_find_panel_or_bridge(const struct device_node *np,
if (!panel && !bridge)
return -EINVAL;
+ if (panel)
+ *panel = NULL;
remote = of_graph_get_remote_node(np, port, endpoint);
if (!remote)