aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-at91/at91sam9261.c
diff options
context:
space:
mode:
authorNicolas Ferre <nicolas.ferre@atmel.com>2010-10-14 13:14:00 -0400
committerNicolas Ferre <nicolas.ferre@atmel.com>2010-10-26 05:32:48 -0400
commitbb413db591d53c29292868577068fa822b84da82 (patch)
tree4a60e1015dd56ec54f00a809a9f3fffa99fa38a2 /arch/arm/mach-at91/at91sam9261.c
parent1345562b449e95e2098cc60eb0eed6d2415cd0b0 (diff)
AT91: reset: extend alternate reset procedure to several chips
Several at91sam9 chips need the alternate reset procedure to be sure to halt SDRAM smoothly before resetting the chip. This is an extension of previous patch "Fix AT91SAM9G20 reset" to all chips affected. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Diffstat (limited to 'arch/arm/mach-at91/at91sam9261.c')
-rw-r--r--arch/arm/mach-at91/at91sam9261.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/arch/arm/mach-at91/at91sam9261.c b/arch/arm/mach-at91/at91sam9261.c
index 4ecf37996c77..fcad88668504 100644
--- a/arch/arm/mach-at91/at91sam9261.c
+++ b/arch/arm/mach-at91/at91sam9261.c
@@ -257,11 +257,6 @@ static struct at91_gpio_bank at91sam9261_gpio[] = {
257 } 257 }
258}; 258};
259 259
260static void at91sam9261_reset(void)
261{
262 at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST);
263}
264
265static void at91sam9261_poweroff(void) 260static void at91sam9261_poweroff(void)
266{ 261{
267 at91_sys_write(AT91_SHDW_CR, AT91_SHDW_KEY | AT91_SHDW_SHDW); 262 at91_sys_write(AT91_SHDW_CR, AT91_SHDW_KEY | AT91_SHDW_SHDW);
@@ -283,7 +278,7 @@ void __init at91sam9261_initialize(unsigned long main_clock)
283 iotable_init(at91sam9261_sram_desc, ARRAY_SIZE(at91sam9261_sram_desc)); 278 iotable_init(at91sam9261_sram_desc, ARRAY_SIZE(at91sam9261_sram_desc));
284 279
285 280
286 at91_arch_reset = at91sam9261_reset; 281 at91_arch_reset = at91sam9_alt_reset;
287 pm_power_off = at91sam9261_poweroff; 282 pm_power_off = at91sam9261_poweroff;
288 at91_extern_irq = (1 << AT91SAM9261_ID_IRQ0) | (1 << AT91SAM9261_ID_IRQ1) 283 at91_extern_irq = (1 << AT91SAM9261_ID_IRQ0) | (1 << AT91SAM9261_ID_IRQ1)
289 | (1 << AT91SAM9261_ID_IRQ2); 284 | (1 << AT91SAM9261_ID_IRQ2);