瀏覽代碼

clk: keystone: gate: fix clk_init_data initialization

The clk_init_data struct is allocated in the stack. All members of
this struct should be initialized before using otherwise it will
lead to unpredictable situation as it can contain garbage.

Ultimately the clk->flag field contains garbage. In my case it leads
that flag CLK_IGNORE_UNUSED is set for most of clocks. As result a
bunch of unused clocks cannot be disabled.

So initialize flags in this structure too.

Cc: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Ivan Khoronzhuk 11 年之前
父節點
當前提交
a65e0c6a7f
共有 1 個文件被更改,包括 1 次插入0 次删除
  1. 1 0
      drivers/clk/keystone/gate.c

+ 1 - 0
drivers/clk/keystone/gate.c

@@ -179,6 +179,7 @@ static struct clk *clk_register_psc(struct device *dev,
 
 
 	init.name = name;
 	init.name = name;
 	init.ops = &clk_psc_ops;
 	init.ops = &clk_psc_ops;
+	init.flags = 0;
 	init.parent_names = (parent_name ? &parent_name : NULL);
 	init.parent_names = (parent_name ? &parent_name : NULL);
 	init.num_parents = (parent_name ? 1 : 0);
 	init.num_parents = (parent_name ? 1 : 0);