diff options
| author | Chen-Yu Tsai <wens@csie.org> | 2014-06-26 11:55:40 -0400 |
|---|---|---|
| committer | Maxime Ripard <maxime.ripard@free-electrons.com> | 2014-07-04 06:05:09 -0400 |
| commit | 70eab199fa39cb78e13d369db55f24a3839b8f9e (patch) | |
| tree | 87490f5b36481f1cfa09e0481e40767a2ef5267a | |
| parent | d14e47056c726de566aa1fa8c3e7a4fd59141091 (diff) | |
clk: sunxi: move "ahb_sdram" to protected clock list
With sunxi_gates clocks registered with clkdev, we can use the
protected clocks list to enable the "ahb_sdram" clock, instead
of looking for it and adding CLK_IGNORE_UNUSED inline in the
clock setup code.
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
| -rw-r--r-- | drivers/clk/sunxi/clk-sunxi.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/clk/sunxi/clk-sunxi.c b/drivers/clk/sunxi/clk-sunxi.c index e43ed6a6b660..a38c799ddc62 100644 --- a/drivers/clk/sunxi/clk-sunxi.c +++ b/drivers/clk/sunxi/clk-sunxi.c | |||
| @@ -870,7 +870,6 @@ static void __init sunxi_gates_clk_setup(struct device_node *node, | |||
| 870 | int qty; | 870 | int qty; |
| 871 | int i = 0; | 871 | int i = 0; |
| 872 | int j = 0; | 872 | int j = 0; |
| 873 | int ignore; | ||
| 874 | 873 | ||
| 875 | reg = of_iomap(node, 0); | 874 | reg = of_iomap(node, 0); |
| 876 | 875 | ||
| @@ -891,11 +890,8 @@ static void __init sunxi_gates_clk_setup(struct device_node *node, | |||
| 891 | of_property_read_string_index(node, "clock-output-names", | 890 | of_property_read_string_index(node, "clock-output-names", |
| 892 | j, &clk_name); | 891 | j, &clk_name); |
| 893 | 892 | ||
| 894 | /* No driver claims this clock, but it should remain gated */ | ||
| 895 | ignore = !strcmp("ahb_sdram", clk_name) ? CLK_IGNORE_UNUSED : 0; | ||
| 896 | |||
| 897 | clk_data->clks[i] = clk_register_gate(NULL, clk_name, | 893 | clk_data->clks[i] = clk_register_gate(NULL, clk_name, |
| 898 | clk_parent, ignore, | 894 | clk_parent, 0, |
| 899 | reg + 4 * (i/32), i % 32, | 895 | reg + 4 * (i/32), i % 32, |
| 900 | 0, &clk_lock); | 896 | 0, &clk_lock); |
| 901 | WARN_ON(IS_ERR(clk_data->clks[i])); | 897 | WARN_ON(IS_ERR(clk_data->clks[i])); |
| @@ -1203,6 +1199,7 @@ static void __init sunxi_init_clocks(const char *clocks[], int nclocks) | |||
| 1203 | 1199 | ||
| 1204 | static const char *sun4i_a10_critical_clocks[] __initdata = { | 1200 | static const char *sun4i_a10_critical_clocks[] __initdata = { |
| 1205 | "pll5_ddr", | 1201 | "pll5_ddr", |
| 1202 | "ahb_sdram", | ||
| 1206 | }; | 1203 | }; |
| 1207 | 1204 | ||
| 1208 | static void __init sun4i_a10_init_clocks(struct device_node *node) | 1205 | static void __init sun4i_a10_init_clocks(struct device_node *node) |
| @@ -1215,6 +1212,7 @@ CLK_OF_DECLARE(sun4i_a10_clk_init, "allwinner,sun4i-a10", sun4i_a10_init_clocks) | |||
| 1215 | static const char *sun5i_critical_clocks[] __initdata = { | 1212 | static const char *sun5i_critical_clocks[] __initdata = { |
| 1216 | "mbus", | 1213 | "mbus", |
| 1217 | "pll5_ddr", | 1214 | "pll5_ddr", |
| 1215 | "ahb_sdram", | ||
| 1218 | }; | 1216 | }; |
| 1219 | 1217 | ||
| 1220 | static void __init sun5i_init_clocks(struct device_node *node) | 1218 | static void __init sun5i_init_clocks(struct device_node *node) |
