diff options
author | John Crispin <blogic@openwrt.org> | 2012-07-24 02:56:41 -0400 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2012-08-22 17:46:37 -0400 |
commit | 98dbc5764d8b6fa9cabe316fe725281703bf0fc6 (patch) | |
tree | 168580f5cfc992341931f30642106f1fc0d42f06 /arch/mips | |
parent | fea7a08acb13524b47711625eebea40a0ede69a0 (diff) |
MIPS: lantiq: explicitly enable clkout generation
Previously we relied on the bootloader to have enabled this bit. However some
bootloaders seem to not enable this for us.
Signed-off-by: John Crispin <blogic@openwrt.org>
Patchwork: http://patchwork.linux-mips.org/patch/4120/
Diffstat (limited to 'arch/mips')
-rw-r--r-- | arch/mips/lantiq/xway/sysctrl.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/mips/lantiq/xway/sysctrl.c b/arch/mips/lantiq/xway/sysctrl.c index befbb760ab76..8430983d3e70 100644 --- a/arch/mips/lantiq/xway/sysctrl.c +++ b/arch/mips/lantiq/xway/sysctrl.c | |||
@@ -187,10 +187,12 @@ static int clkout_enable(struct clk *clk) | |||
187 | for (i = 0; i < 4; i++) { | 187 | for (i = 0; i < 4; i++) { |
188 | if (clk->rates[i] == clk->rate) { | 188 | if (clk->rates[i] == clk->rate) { |
189 | int shift = 14 - (2 * clk->module); | 189 | int shift = 14 - (2 * clk->module); |
190 | int enable = 7 - clk->module; | ||
190 | unsigned int val = ltq_cgu_r32(ifccr); | 191 | unsigned int val = ltq_cgu_r32(ifccr); |
191 | 192 | ||
192 | val &= ~(3 << shift); | 193 | val &= ~(3 << shift); |
193 | val |= i << shift; | 194 | val |= i << shift; |
195 | val |= enable; | ||
194 | ltq_cgu_w32(val, ifccr); | 196 | ltq_cgu_w32(val, ifccr); |
195 | return 0; | 197 | return 0; |
196 | } | 198 | } |