diff options
| author | Alexander Shiyan <shc_work@mail.ru> | 2018-12-20 03:54:33 -0500 |
|---|---|---|
| committer | Stephen Boyd <sboyd@kernel.org> | 2019-01-09 15:50:21 -0500 |
| commit | 31cc9e09688c77b2e87e5770802ebb1fd8ac9011 (patch) | |
| tree | b0d952d1f4ea889f0bb7061d0f534a5f7413cc51 | |
| parent | bfeffd155283772bbe78c6a05dec7c0128ee500c (diff) | |
clk: clps711x: Remove board support
Since board support for the CLPS711X platform was removed,
remove the board support from the clk-clps711x driver.
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
| -rw-r--r-- | drivers/clk/clk-clps711x.c | 61 |
1 files changed, 11 insertions, 50 deletions
diff --git a/drivers/clk/clk-clps711x.c b/drivers/clk/clk-clps711x.c index 2c04396402ab..c36c47bdba02 100644 --- a/drivers/clk/clk-clps711x.c +++ b/drivers/clk/clk-clps711x.c | |||
| @@ -44,21 +44,21 @@ struct clps711x_clk { | |||
| 44 | struct clk_hw_onecell_data clk_data; | 44 | struct clk_hw_onecell_data clk_data; |
| 45 | }; | 45 | }; |
| 46 | 46 | ||
| 47 | static struct clps711x_clk * __init _clps711x_clk_init(void __iomem *base, | 47 | static void __init clps711x_clk_init_dt(struct device_node *np) |
| 48 | u32 fref) | ||
| 49 | { | 48 | { |
| 50 | u32 tmp, f_cpu, f_pll, f_bus, f_tim, f_pwm, f_spi; | 49 | u32 tmp, f_cpu, f_pll, f_bus, f_tim, f_pwm, f_spi, fref = 0; |
| 51 | struct clps711x_clk *clps711x_clk; | 50 | struct clps711x_clk *clps711x_clk; |
| 52 | unsigned i; | 51 | void __iomem *base; |
| 52 | |||
| 53 | WARN_ON(of_property_read_u32(np, "startup-frequency", &fref)); | ||
| 53 | 54 | ||
| 54 | if (!base) | 55 | base = of_iomap(np, 0); |
| 55 | return ERR_PTR(-ENOMEM); | 56 | BUG_ON(!base); |
| 56 | 57 | ||
| 57 | clps711x_clk = kzalloc(struct_size(clps711x_clk, clk_data.hws, | 58 | clps711x_clk = kzalloc(struct_size(clps711x_clk, clk_data.hws, |
| 58 | CLPS711X_CLK_MAX), | 59 | CLPS711X_CLK_MAX), |
| 59 | GFP_KERNEL); | 60 | GFP_KERNEL); |
| 60 | if (!clps711x_clk) | 61 | BUG_ON(!clps711x_clk); |
| 61 | return ERR_PTR(-ENOMEM); | ||
| 62 | 62 | ||
| 63 | spin_lock_init(&clps711x_clk->lock); | 63 | spin_lock_init(&clps711x_clk->lock); |
| 64 | 64 | ||
| @@ -137,52 +137,13 @@ static struct clps711x_clk * __init _clps711x_clk_init(void __iomem *base, | |||
| 137 | clk_hw_register_fixed_factor(NULL, "uart", "bus", 0, 1, 10); | 137 | clk_hw_register_fixed_factor(NULL, "uart", "bus", 0, 1, 10); |
| 138 | clps711x_clk->clk_data.hws[CLPS711X_CLK_TICK] = | 138 | clps711x_clk->clk_data.hws[CLPS711X_CLK_TICK] = |
| 139 | clk_hw_register_fixed_rate(NULL, "tick", NULL, 0, 64); | 139 | clk_hw_register_fixed_rate(NULL, "tick", NULL, 0, 64); |
| 140 | for (i = 0; i < CLPS711X_CLK_MAX; i++) | 140 | for (tmp = 0; tmp < CLPS711X_CLK_MAX; tmp++) |
| 141 | if (IS_ERR(clps711x_clk->clk_data.hws[i])) | 141 | if (IS_ERR(clps711x_clk->clk_data.hws[tmp])) |
| 142 | pr_err("clk %i: register failed with %ld\n", | 142 | pr_err("clk %i: register failed with %ld\n", |
| 143 | i, PTR_ERR(clps711x_clk->clk_data.hws[i])); | 143 | tmp, PTR_ERR(clps711x_clk->clk_data.hws[tmp])); |
| 144 | |||
| 145 | return clps711x_clk; | ||
| 146 | } | ||
| 147 | |||
| 148 | void __init clps711x_clk_init(void __iomem *base) | ||
| 149 | { | ||
| 150 | struct clps711x_clk *clps711x_clk; | ||
| 151 | |||
| 152 | clps711x_clk = _clps711x_clk_init(base, 73728000); | ||
| 153 | |||
| 154 | BUG_ON(IS_ERR(clps711x_clk)); | ||
| 155 | |||
| 156 | /* Clocksource */ | ||
| 157 | clk_hw_register_clkdev(clps711x_clk->clk_data.hws[CLPS711X_CLK_TIMER1], | ||
| 158 | NULL, "clps711x-timer.0"); | ||
| 159 | clk_hw_register_clkdev(clps711x_clk->clk_data.hws[CLPS711X_CLK_TIMER2], | ||
| 160 | NULL, "clps711x-timer.1"); | ||
| 161 | |||
| 162 | /* Drivers */ | ||
| 163 | clk_hw_register_clkdev(clps711x_clk->clk_data.hws[CLPS711X_CLK_PWM], | ||
| 164 | NULL, "clps711x-pwm"); | ||
| 165 | clk_hw_register_clkdev(clps711x_clk->clk_data.hws[CLPS711X_CLK_UART], | ||
| 166 | NULL, "clps711x-uart.0"); | ||
| 167 | clk_hw_register_clkdev(clps711x_clk->clk_data.hws[CLPS711X_CLK_UART], | ||
| 168 | NULL, "clps711x-uart.1"); | ||
| 169 | } | ||
| 170 | |||
| 171 | #ifdef CONFIG_OF | ||
| 172 | static void __init clps711x_clk_init_dt(struct device_node *np) | ||
| 173 | { | ||
| 174 | void __iomem *base = of_iomap(np, 0); | ||
| 175 | struct clps711x_clk *clps711x_clk; | ||
| 176 | u32 fref = 0; | ||
| 177 | |||
| 178 | WARN_ON(of_property_read_u32(np, "startup-frequency", &fref)); | ||
| 179 | |||
| 180 | clps711x_clk = _clps711x_clk_init(base, fref); | ||
| 181 | BUG_ON(IS_ERR(clps711x_clk)); | ||
| 182 | 144 | ||
| 183 | clps711x_clk->clk_data.num = CLPS711X_CLK_MAX; | 145 | clps711x_clk->clk_data.num = CLPS711X_CLK_MAX; |
| 184 | of_clk_add_hw_provider(np, of_clk_hw_onecell_get, | 146 | of_clk_add_hw_provider(np, of_clk_hw_onecell_get, |
| 185 | &clps711x_clk->clk_data); | 147 | &clps711x_clk->clk_data); |
| 186 | } | 148 | } |
| 187 | CLK_OF_DECLARE(clps711x, "cirrus,ep7209-clk", clps711x_clk_init_dt); | 149 | CLK_OF_DECLARE(clps711x, "cirrus,ep7209-clk", clps711x_clk_init_dt); |
| 188 | #endif | ||
