Commit 9fa2568d authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Maxime Ripard

drm: sun4i: fix probe error handling

gcc points out a possible uninitialized variable use in
sun4i_dclk_create():

drivers/gpu/drm/sun4i/sun4i_dotclock.c: In function 'sun4i_dclk_create':
drivers/gpu/drm/sun4i/sun4i_dotclock.c:139:12: error: 'clk_name' may be used uninitialized in this function [-Werror=maybe-uninitialized]
  init.name = clk_name;

The warning only shows up when CONFIG_OF is disabled, and the
property is never filled, but the same bug can show up even
when CONFIG_OF is enabled but of_property_read_string_index
returns another error.

To fix it, this ensures that sun4i_dclk_create propagates
any error from of_property_read_string_index.
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Fixes: 9026e0d1 ("drm: Add Allwinner A10 Display Engine support")
Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
parent f1b78f0e
...@@ -127,10 +127,14 @@ int sun4i_dclk_create(struct device *dev, struct sun4i_tcon *tcon) ...@@ -127,10 +127,14 @@ int sun4i_dclk_create(struct device *dev, struct sun4i_tcon *tcon)
const char *clk_name, *parent_name; const char *clk_name, *parent_name;
struct clk_init_data init; struct clk_init_data init;
struct sun4i_dclk *dclk; struct sun4i_dclk *dclk;
int ret;
parent_name = __clk_get_name(tcon->sclk0); parent_name = __clk_get_name(tcon->sclk0);
of_property_read_string_index(dev->of_node, "clock-output-names", 0, ret = of_property_read_string_index(dev->of_node,
"clock-output-names", 0,
&clk_name); &clk_name);
if (ret)
return ret;
dclk = devm_kzalloc(dev, sizeof(*dclk), GFP_KERNEL); dclk = devm_kzalloc(dev, sizeof(*dclk), GFP_KERNEL);
if (!dclk) if (!dclk)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment