aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2012-07-24 02:56:41 -0400
committerJohn Crispin <blogic@openwrt.org>2012-08-22 17:46:37 -0400
commit98dbc5764d8b6fa9cabe316fe725281703bf0fc6 (patch)
tree168580f5cfc992341931f30642106f1fc0d42f06 /arch/mips
parentfea7a08acb13524b47711625eebea40a0ede69a0 (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.c2
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 }