diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2008-11-13 08:44:15 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-02-08 12:50:11 -0500 |
commit | 9a5fedac187f30116013a8420149d4ca11a44f0d (patch) | |
tree | 3cdcd9e8887a6fa41d1ddd85eb8c759990adc27b /arch/arm/mach-omap2/clock34xx.h | |
parent | a9e882096317a088087b608d272da7029a6cc8c8 (diff) |
[ARM] omap: move propagate_rate() calls into generic omap clock code
propagate_rate() is recursive, so it makes sense to minimise the
amount of stack which is used for each recursion. So, rather than
recursing back into it from the ->recalc functions if RATE_PROPAGATES
is set, do that test at the higher level.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-omap2/clock34xx.h')
-rw-r--r-- | arch/arm/mach-omap2/clock34xx.h | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/arch/arm/mach-omap2/clock34xx.h b/arch/arm/mach-omap2/clock34xx.h index 335ef88ada55..dcacec84f8ca 100644 --- a/arch/arm/mach-omap2/clock34xx.h +++ b/arch/arm/mach-omap2/clock34xx.h | |||
@@ -58,7 +58,6 @@ static struct clk omap_32k_fck = { | |||
58 | .ops = &clkops_null, | 58 | .ops = &clkops_null, |
59 | .rate = 32768, | 59 | .rate = 32768, |
60 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, | 60 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, |
61 | .recalc = &propagate_rate, | ||
62 | }; | 61 | }; |
63 | 62 | ||
64 | static struct clk secure_32k_fck = { | 63 | static struct clk secure_32k_fck = { |
@@ -66,7 +65,6 @@ static struct clk secure_32k_fck = { | |||
66 | .ops = &clkops_null, | 65 | .ops = &clkops_null, |
67 | .rate = 32768, | 66 | .rate = 32768, |
68 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, | 67 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, |
69 | .recalc = &propagate_rate, | ||
70 | }; | 68 | }; |
71 | 69 | ||
72 | /* Virtual source clocks for osc_sys_ck */ | 70 | /* Virtual source clocks for osc_sys_ck */ |
@@ -75,7 +73,6 @@ static struct clk virt_12m_ck = { | |||
75 | .ops = &clkops_null, | 73 | .ops = &clkops_null, |
76 | .rate = 12000000, | 74 | .rate = 12000000, |
77 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, | 75 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, |
78 | .recalc = &propagate_rate, | ||
79 | }; | 76 | }; |
80 | 77 | ||
81 | static struct clk virt_13m_ck = { | 78 | static struct clk virt_13m_ck = { |
@@ -83,7 +80,6 @@ static struct clk virt_13m_ck = { | |||
83 | .ops = &clkops_null, | 80 | .ops = &clkops_null, |
84 | .rate = 13000000, | 81 | .rate = 13000000, |
85 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, | 82 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, |
86 | .recalc = &propagate_rate, | ||
87 | }; | 83 | }; |
88 | 84 | ||
89 | static struct clk virt_16_8m_ck = { | 85 | static struct clk virt_16_8m_ck = { |
@@ -91,7 +87,6 @@ static struct clk virt_16_8m_ck = { | |||
91 | .ops = &clkops_null, | 87 | .ops = &clkops_null, |
92 | .rate = 16800000, | 88 | .rate = 16800000, |
93 | .flags = CLOCK_IN_OMAP3430ES2 | RATE_FIXED | RATE_PROPAGATES, | 89 | .flags = CLOCK_IN_OMAP3430ES2 | RATE_FIXED | RATE_PROPAGATES, |
94 | .recalc = &propagate_rate, | ||
95 | }; | 90 | }; |
96 | 91 | ||
97 | static struct clk virt_19_2m_ck = { | 92 | static struct clk virt_19_2m_ck = { |
@@ -99,7 +94,6 @@ static struct clk virt_19_2m_ck = { | |||
99 | .ops = &clkops_null, | 94 | .ops = &clkops_null, |
100 | .rate = 19200000, | 95 | .rate = 19200000, |
101 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, | 96 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, |
102 | .recalc = &propagate_rate, | ||
103 | }; | 97 | }; |
104 | 98 | ||
105 | static struct clk virt_26m_ck = { | 99 | static struct clk virt_26m_ck = { |
@@ -107,7 +101,6 @@ static struct clk virt_26m_ck = { | |||
107 | .ops = &clkops_null, | 101 | .ops = &clkops_null, |
108 | .rate = 26000000, | 102 | .rate = 26000000, |
109 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, | 103 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, |
110 | .recalc = &propagate_rate, | ||
111 | }; | 104 | }; |
112 | 105 | ||
113 | static struct clk virt_38_4m_ck = { | 106 | static struct clk virt_38_4m_ck = { |
@@ -115,7 +108,6 @@ static struct clk virt_38_4m_ck = { | |||
115 | .ops = &clkops_null, | 108 | .ops = &clkops_null, |
116 | .rate = 38400000, | 109 | .rate = 38400000, |
117 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, | 110 | .flags = CLOCK_IN_OMAP343X | RATE_FIXED | RATE_PROPAGATES, |
118 | .recalc = &propagate_rate, | ||
119 | }; | 111 | }; |
120 | 112 | ||
121 | static const struct clksel_rate osc_sys_12m_rates[] = { | 113 | static const struct clksel_rate osc_sys_12m_rates[] = { |
@@ -201,7 +193,6 @@ static struct clk sys_altclk = { | |||
201 | .name = "sys_altclk", | 193 | .name = "sys_altclk", |
202 | .ops = &clkops_null, | 194 | .ops = &clkops_null, |
203 | .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES, | 195 | .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES, |
204 | .recalc = &propagate_rate, | ||
205 | }; | 196 | }; |
206 | 197 | ||
207 | /* Optional external clock input for some McBSPs */ | 198 | /* Optional external clock input for some McBSPs */ |
@@ -209,7 +200,6 @@ static struct clk mcbsp_clks = { | |||
209 | .name = "mcbsp_clks", | 200 | .name = "mcbsp_clks", |
210 | .ops = &clkops_null, | 201 | .ops = &clkops_null, |
211 | .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES, | 202 | .flags = CLOCK_IN_OMAP343X | RATE_PROPAGATES, |
212 | .recalc = &propagate_rate, | ||
213 | }; | 203 | }; |
214 | 204 | ||
215 | /* PRM EXTERNAL CLOCK OUTPUT */ | 205 | /* PRM EXTERNAL CLOCK OUTPUT */ |