How Ultra-Fast Boot Works
Suspend-To-RAM
The Ultra-Fast Boot is based on Linux® Suspend-to-RAM.
What is Suspend-to-RAM?
Suspend-to-RAM is the state where everything in the system enters a low-power state except for Dynamic Random Access Memory (DRAM), which consumes a small amount of power in order to retain its contents. All configuration, peripheral registers, and active processes are stored in DRAM, while most of the system's other components are turned off.
When a system is suspended, it transitions the processor into low-power configurations like STANDBY, SLOW_CLOCK, or BACKUP by disabling peripherals, saving context, and lowering DRAM power. The kernel calls on drivers to store their states and then unloads them. When the system is resumed, it reloads these drivers, which attempt to reprogram their devices.
Introduction to Microchip/Atmel® BACKUP Mode
BACKUP mode refers to the ultra-low-power Backup State function for Microchip/Atmel® SAMA5 and SAMA7 series Arm® microprocessors. In this state, the main processor and peripherals are powered off, while the Real-Time Clock (RTC) and battery-backed registers/SRAM stay active.
It can be extended to keep external Double Data Rate (DDR) memory in a low-power self-refresh state.
What is BSR?
Backup with Synchronous Dynamic Random Access Memory (SDRAM) in Self-Refresh (BSR) mode is an extension of backup mode with the application context saved in the external Double Data Rate (DDR) memory operating in Self-Refresh mode. In this mode, VBAT and VDDIODDR power inputs must be maintained, as well as the DDR component power inputs.
Hardware Requirements for BSR
- A power management Integrated Circuit (IC)
- All power supply inputs can be maintained by a Power Management Integrated Circuit (PMIC). The PMIC provides power to the processor and to the DDRAM. For example, MCP16502, a 6-channel PMIC with an Inter-Integrated Circuit (I²C) control interface, supports dynamic voltage scaling and processor low-power modes (ULP2, BSR).
- A supercapacitor or a coin cell battery to supply VDDBU (VBAT).
How Does BSR Work
Enter BSR Mode
Software saves all context information to resume. The operating system saves essential states (like DDR PHY calibration data or Central Processing Unit (CPU) registers) into battery-backed backup SRAM.
Copy to Static Random Access Memory (SRAM) and execute out of SRAM the routine to set the DDR to Self-refresh mode and to shut down the device (as soon as the DDR is in Self-refresh, accessing the DDR is no longer possible).
Put the DDR in Self-refresh mode and wait until the self-refresh status is OK.
Switch the system clock to Slow Clock.
Enter Backup mode by asserting the SHDN pin to notify the PMIC that all powers except VDDBU can be turned off.

Exit BSR Mode
The device exits BSR mode when an active wake-up event is triggered by the SHDWC. Upon this wake-up event, the SHDWC automatically toggles its SHDN output back to VBAT and this signal typically helps to fast-boot all the power supply channels at the board level.
CPU Resume Function
The CPU resume function is a fundamental kernel-level function in operating systems for waking a processor core up from a low-power or deep sleep state (suspend-to-RAM). It restores the CPU's context, resets hardware registers, and enables the scheduler to run again.
System Resume
When an interrupt (like a timer or hardware event) occurs, execution jumps to CPU resume function to restore system registers and safely returns the CPU to a working state without losing tasks.

How Ultra-Fast Boot Works
Regarding Suspend-To-Ram, the system can wake up from suspend state and resume operation in less than 250 ms.
When a wake-up event occurs, the chip goes through a cold reset. The system at91bootstrap recognizes the low-power resume state, restores memory contexts using the saved data, and hands control back to the kernel.
See CPU Resume Function and System Resume for details.

When the system is in suspend state, the DRAM content (system kernel, drivers and applications) can be saved to Flash memory as a snapshot image. Operates like Suspend-to-RAM but stores all current data to the Flash. In this state, no power is consumed.

During boot, everything is loaded back from the snapshot image into DRAM, and all running applications are restored immediately.

Ultra-Fast Snapshot Image Creation

Ultra-Fast Working Flow in at91bootstrap
- Standard boot path
- Low-power mode (BACKUP,|RESTORE) is not ready
- No valid snapshot image has been found on external Non-Volatile Memory (NVM)
- Snapshot image creation path
- Low-power mode (BACKUP,|RESTORE | SNAPSHOT) is ready
- No valid snapshot image has been found on external NVM
- Load snapshot image path
- Low-power mode (BACKUP,|RESTORE) is not ready
- A valid snapshot image has been found on external NVM
