12.3. Architecture
12.3.1. cpuidle
The cpuidle framework consists of two key components:
•
•
12.3.1.1. System Diagram
Figure 12.1. cpuidle overview
The idle loop is executed when the Linux scheduler has no thread to run. When
the idle loop is executed, current 'governor' is called to decide the target C-
state. Governor decides whether to continue in current state/ transition to a
different state. Current 'driver' is called to transition to the selected state.
12.3.1.2. C-states
A C-state is used to identify the power state supported through the cpu idle
loop. Each C-state is characterized by its:
•
•
•
The definition of C-states in the OMAP3 are a combination of the MPU and CORE
states. Currently these C-states have been defined:
Version 02.01.01.08
A governor that decides the target C-state of the system.
A driver that implements the functions to transition to target C-state.
Power consumption
Wakeup latency
Preservation of processor state while in 'the' state.
Platform Support Products
Power Management
Architecture
207