diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-09 17:38:51 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-09 17:38:51 -0500 |
commit | 5ede3ceb7b2c2843e153a1803edbdc8c56655950 (patch) | |
tree | 4cfa82b619f7d39b671e4a2a213f4d040b09c486 /arch/arm/mach-davinci/clock.c | |
parent | 6d889d03ab1417645e76e129834f76204bae37c0 (diff) | |
parent | 3e2762c8f1141ae8dc708034ea41d6827818c328 (diff) |
Merge tag 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
New feature development
This adds support for new features, and contains stuff from most
platforms. A number of these patches could have fit into other
branches, too, but were small enough not to cause too much
confusion here.
* tag 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (28 commits)
mfd/db8500-prcmu: remove support for early silicon revisions
ARM: ux500: fix the smp_twd clock calculation
ARM: ux500: remove support for early silicon revisions
ARM: ux500: update register files
ARM: ux500: register DB5500 PMU dynamically
ARM: ux500: update ASIC detection for U5500
ARM: ux500: support DB8520
ARM: picoxcell: implement watchdog restart
ARM: OMAP3+: hwmod data: Add the default clockactivity for I2C
ARM: OMAP3: hwmod data: disable multiblock reads on MMC1/2 on OMAP34xx/35xx <= ES2.1
ARM: OMAP: USB: EHCI and OHCI hwmod structures for OMAP4
ARM: OMAP: USB: EHCI and OHCI hwmod structures for OMAP3
ARM: OMAP: hwmod data: Add support for AM35xx UART4/ttyO3
ARM: Orion: Remove address map info from all platform data structures
ARM: Orion: Get address map from plat-orion instead of via platform_data
ARM: Orion: mbus_dram_info consolidation
ARM: Orion: Consolidate the address map setup
ARM: Kirkwood: Add configuration for MPP12 as GPIO
ARM: Kirkwood: Recognize A1 revision of 6282 chip
ARM: ux500: update the MOP500 GPIO assignments
...
Diffstat (limited to 'arch/arm/mach-davinci/clock.c')
-rw-r--r-- | arch/arm/mach-davinci/clock.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/arch/arm/mach-davinci/clock.c b/arch/arm/mach-davinci/clock.c index 00861139101d..008772e3b843 100644 --- a/arch/arm/mach-davinci/clock.c +++ b/arch/arm/mach-davinci/clock.c | |||
@@ -31,19 +31,12 @@ static LIST_HEAD(clocks); | |||
31 | static DEFINE_MUTEX(clocks_mutex); | 31 | static DEFINE_MUTEX(clocks_mutex); |
32 | static DEFINE_SPINLOCK(clockfw_lock); | 32 | static DEFINE_SPINLOCK(clockfw_lock); |
33 | 33 | ||
34 | static unsigned psc_domain(struct clk *clk) | ||
35 | { | ||
36 | return (clk->flags & PSC_DSP) | ||
37 | ? DAVINCI_GPSC_DSPDOMAIN | ||
38 | : DAVINCI_GPSC_ARMDOMAIN; | ||
39 | } | ||
40 | |||
41 | static void __clk_enable(struct clk *clk) | 34 | static void __clk_enable(struct clk *clk) |
42 | { | 35 | { |
43 | if (clk->parent) | 36 | if (clk->parent) |
44 | __clk_enable(clk->parent); | 37 | __clk_enable(clk->parent); |
45 | if (clk->usecount++ == 0 && (clk->flags & CLK_PSC)) | 38 | if (clk->usecount++ == 0 && (clk->flags & CLK_PSC)) |
46 | davinci_psc_config(psc_domain(clk), clk->gpsc, clk->lpsc, | 39 | davinci_psc_config(clk->domain, clk->gpsc, clk->lpsc, |
47 | true, clk->flags); | 40 | true, clk->flags); |
48 | } | 41 | } |
49 | 42 | ||
@@ -53,7 +46,7 @@ static void __clk_disable(struct clk *clk) | |||
53 | return; | 46 | return; |
54 | if (--clk->usecount == 0 && !(clk->flags & CLK_PLL) && | 47 | if (--clk->usecount == 0 && !(clk->flags & CLK_PLL) && |
55 | (clk->flags & CLK_PSC)) | 48 | (clk->flags & CLK_PSC)) |
56 | davinci_psc_config(psc_domain(clk), clk->gpsc, clk->lpsc, | 49 | davinci_psc_config(clk->domain, clk->gpsc, clk->lpsc, |
57 | false, clk->flags); | 50 | false, clk->flags); |
58 | if (clk->parent) | 51 | if (clk->parent) |
59 | __clk_disable(clk->parent); | 52 | __clk_disable(clk->parent); |
@@ -237,7 +230,7 @@ static int __init clk_disable_unused(void) | |||
237 | 230 | ||
238 | pr_debug("Clocks: disable unused %s\n", ck->name); | 231 | pr_debug("Clocks: disable unused %s\n", ck->name); |
239 | 232 | ||
240 | davinci_psc_config(psc_domain(ck), ck->gpsc, ck->lpsc, | 233 | davinci_psc_config(ck->domain, ck->gpsc, ck->lpsc, |
241 | false, ck->flags); | 234 | false, ck->flags); |
242 | } | 235 | } |
243 | spin_unlock_irq(&clockfw_lock); | 236 | spin_unlock_irq(&clockfw_lock); |