From: Daniel Hellstrom Date: Wed, 22 Sep 2010 15:42:29 +0000 (+0200) Subject: sparc: leon3: Clear all unused GPTIMER registers. X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=cb31eaa4b3e870e4520dd0ce6f9ce326dc9cf50b;p=u-boot.git sparc: leon3: Clear all unused GPTIMER registers. Signed-off-by: Daniel Hellstrom --- diff --git a/arch/sparc/cpu/leon3/cpu_init.c b/arch/sparc/cpu/leon3/cpu_init.c index 20a6a256f0..0ce2f89dff 100644 --- a/arch/sparc/cpu/leon3/cpu_init.c +++ b/arch/sparc/cpu/leon3/cpu_init.c @@ -90,7 +90,7 @@ int arch_cpu_init(void) int cpu_init_r(void) { ambapp_apbdev apbdev; - int index, cpu; + int index, cpu, ntimers, i; ambapp_dev_gptimer *timer = NULL; unsigned int bus_freq; @@ -135,6 +135,14 @@ int cpu_init_r(void) timer->scalar = timer->scalar_reload = (((bus_freq / 1000) + 500) / 1000) - 1; + /* Clear All Timers */ + ntimers = timer->config & 0x7; + for (i = 0; i < ntimers; i++) { + timer->e[i].ctrl = GPTIMER_CTRL_IP; + timer->e[i].rld = 0; + timer->e[i].ctrl = GPTIMER_CTRL_LD; + } + index++; } if (!gptimer) {