diff options
author | Jongpill Lee <boyko.lee@samsung.com> | 2010-08-27 03:50:47 -0400 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2010-08-27 05:29:24 -0400 |
commit | 5a847b4af8057f0297356824f793988d311d7aa0 (patch) | |
tree | 2c6ec3ec319e1dccd7b724284c785592372bd59d /arch | |
parent | 3ff310206db33e66c076b1f656e70e9080f5be50 (diff) |
ARM: S5PV310: Fix missed uart clocks
This patch adds missed uart clocks for S5PV310/S5PC210.
Signed-off-by: Jongpill Lee <boyko.lee@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-s5pv310/clock.c | 44 |
1 files changed, 37 insertions, 7 deletions
diff --git a/arch/arm/mach-s5pv310/clock.c b/arch/arm/mach-s5pv310/clock.c index b3f50426148d..165c8bf412b2 100644 --- a/arch/arm/mach-s5pv310/clock.c +++ b/arch/arm/mach-s5pv310/clock.c | |||
@@ -30,6 +30,11 @@ static struct clk clk_sclk_hdmi27m = { | |||
30 | .rate = 27000000, | 30 | .rate = 27000000, |
31 | }; | 31 | }; |
32 | 32 | ||
33 | static int s5pv310_clk_ip_peril_ctrl(struct clk *clk, int enable) | ||
34 | { | ||
35 | return s5p_gatectrl(S5P_CLKGATE_IP_PERIL, clk, enable); | ||
36 | } | ||
37 | |||
33 | /* Core list of CMU_CPU side */ | 38 | /* Core list of CMU_CPU side */ |
34 | 39 | ||
35 | static struct clksrc_clk clk_mout_apll = { | 40 | static struct clksrc_clk clk_mout_apll = { |
@@ -329,11 +334,6 @@ static struct clksrc_clk clk_sclk_vpll = { | |||
329 | .reg_src = { .reg = S5P_CLKSRC_TOP0, .shift = 8, .size = 1 }, | 334 | .reg_src = { .reg = S5P_CLKSRC_TOP0, .shift = 8, .size = 1 }, |
330 | }; | 335 | }; |
331 | 336 | ||
332 | static int s5pv310_clk_ip_peril_ctrl(struct clk *clk, int enable) | ||
333 | { | ||
334 | return s5p_gatectrl(S5P_CLKGATE_IP_PERIL, clk, enable); | ||
335 | } | ||
336 | |||
337 | static struct clk init_clocks_disable[] = { | 337 | static struct clk init_clocks_disable[] = { |
338 | { | 338 | { |
339 | .name = "timers", | 339 | .name = "timers", |
@@ -345,7 +345,37 @@ static struct clk init_clocks_disable[] = { | |||
345 | }; | 345 | }; |
346 | 346 | ||
347 | static struct clk init_clocks[] = { | 347 | static struct clk init_clocks[] = { |
348 | /* Nothing here yet */ | 348 | { |
349 | .name = "uart", | ||
350 | .id = 0, | ||
351 | .enable = s5pv310_clk_ip_peril_ctrl, | ||
352 | .ctrlbit = (1 << 0), | ||
353 | }, { | ||
354 | .name = "uart", | ||
355 | .id = 1, | ||
356 | .enable = s5pv310_clk_ip_peril_ctrl, | ||
357 | .ctrlbit = (1 << 1), | ||
358 | }, { | ||
359 | .name = "uart", | ||
360 | .id = 2, | ||
361 | .enable = s5pv310_clk_ip_peril_ctrl, | ||
362 | .ctrlbit = (1 << 2), | ||
363 | }, { | ||
364 | .name = "uart", | ||
365 | .id = 3, | ||
366 | .enable = s5pv310_clk_ip_peril_ctrl, | ||
367 | .ctrlbit = (1 << 3), | ||
368 | }, { | ||
369 | .name = "uart", | ||
370 | .id = 4, | ||
371 | .enable = s5pv310_clk_ip_peril_ctrl, | ||
372 | .ctrlbit = (1 << 4), | ||
373 | }, { | ||
374 | .name = "uart", | ||
375 | .id = 5, | ||
376 | .enable = s5pv310_clk_ip_peril_ctrl, | ||
377 | .ctrlbit = (1 << 5), | ||
378 | } | ||
349 | }; | 379 | }; |
350 | 380 | ||
351 | static struct clk *clkset_group_list[] = { | 381 | static struct clk *clkset_group_list[] = { |
@@ -367,8 +397,8 @@ static struct clksrc_clk clksrcs[] = { | |||
367 | .clk = { | 397 | .clk = { |
368 | .name = "uclk1", | 398 | .name = "uclk1", |
369 | .id = 0, | 399 | .id = 0, |
370 | .ctrlbit = (1 << 0), | ||
371 | .enable = s5pv310_clk_ip_peril_ctrl, | 400 | .enable = s5pv310_clk_ip_peril_ctrl, |
401 | .ctrlbit = (1 << 0), | ||
372 | }, | 402 | }, |
373 | .sources = &clkset_group, | 403 | .sources = &clkset_group, |
374 | .reg_src = { .reg = S5P_CLKSRC_PERIL0, .shift = 0, .size = 4 }, | 404 | .reg_src = { .reg = S5P_CLKSRC_PERIL0, .shift = 0, .size = 4 }, |