kernel-hacking-2024-linux-s.../arch/avr32/mach-at32ap
Haavard Skinnemoen 02a00cf672 avr32: Power Management support ("standby" and "mem" modes)
Implement Standby support. In this mode, we'll suspend all drivers,
put the SDRAM in self-refresh mode and switch off the HSB bus
("frozen" mode.)

Implement Suspend-to-mem support. In this mode, we suspend all
drivers, put the SDRAM into self-refresh mode and switch off all
internal clocks except the 32 kHz oscillator ("stop" mode.)

The lowest-level suspend code runs from a small portion of SRAM
allocated at startup time. This gets rid of a small potential race
with the SDRAM where we might try to enter self-refresh mode in the
middle of an icache burst. We also relocate all interrupt and
exception handlers to SRAM during the small window when we enter and
exit the low-power modes.

We don't need to do any special tricks to start and stop the PLL. The
main clock is automatically gated by hardware until the PLL is stable.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
2008-07-02 11:05:01 +02:00
..
at32ap700x.c avr32: Add simple SRAM allocator 2008-07-02 11:05:01 +02:00
clock.c
clock.h
cpufreq.c avr32: Fix cpufreq oops when ondemand governor is default 2008-05-27 09:37:42 +02:00
extint.c
hmatrix.h
hsmc.c
hsmc.h
intc.c avr32: Power Management support ("standby" and "mem" modes) 2008-07-02 11:05:01 +02:00
intc.h
Kconfig
Makefile avr32: Power Management support ("standby" and "mem" modes) 2008-07-02 11:05:01 +02:00
pdc.c avr32: Rename at32ap.c -> pdc.c 2008-06-28 15:08:48 +02:00
pio.c avr32: minor GPIO handling updates 2008-06-27 15:32:27 +02:00
pio.h
pm-at32ap700x.S avr32: Power Management support ("standby" and "mem" modes) 2008-07-02 11:05:01 +02:00
pm.c avr32: Power Management support ("standby" and "mem" modes) 2008-07-02 11:05:01 +02:00
pm.h
sdramc.h avr32: Power Management support ("standby" and "mem" modes) 2008-07-02 11:05:01 +02:00