State Save And Restore - Samsung S5PC110 Manual

Risc microprocessor
Table of Contents

Advertisement

S5PC110_UM
4 POWER MANAGEMENT

4.5.3 STATE SAVE AND RESTORE

The current state of power-gated modules will be lost when their power turns "OFF". Therefore, before the
modules are power-gated, their state should be saved, and restored after wakeup reset is asserted. In case of
Cortex-A8, in DEEP-IDLE, DEEP-STOP, and SLEEP mode, the state of Cortex-A8 core will be lost, therefore the
current states must be saved. Cortex-A8 will start running from the reset handler as it does when hardware reset
occurs. To continue execution from the point where it entered SLEEP mode, users must save and restore the
current states before and after those modes. An example of state save and restore is described below.
Before entering SLEEP mode,
1. Save the status of necessary modules.
2. Save resume address, MMU (Memory Management Unit), and registers for each Cortex-A8 mode (SVC, FIQ,
IRQ, ABT, etc.).
3. Create and save checksum for security.
4. Flush cache if L2 cache is power-gated.
After wake-up,
1. Proceed to normal system initialization sequence including PLL locking.
2. Look up the RST_STAT register to check if it is the wake-up from SLEEP mode.
3. Let external DRAM exit from self-refresh mode.
4. Restore all registers and MMU information.
5. Jump to the saved resume address to resume execution.
The SYSCON has eight 32-bit SFRs, namely, INFORM0-6 for quick saving and recovery of the state information,
or you can save information to external DRAM.
4-24

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents