diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2017-09-25 13:30:38 +0300 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2017-10-01 02:30:01 +0300 |
commit | 320e421ea303b1e53451b2b4cd3ad18cdd043b3b (patch) | |
tree | f96c37dbc6856664907432fe537b0ead59449c52 /drivers/gpu/drm/drm_of.c | |
parent | 44390ef519006b13c8fab9eb13abac909342a585 (diff) | |
download | linux-320e421ea303b1e53451b2b4cd3ad18cdd043b3b.tar.xz |
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
Diffstat (limited to 'drivers/gpu/drm/drm_of.c')
-rw-r--r-- | drivers/gpu/drm/drm_of.c | 2 |
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) |