Area for communication between the power manager and the power management kernel
callout.
The pminfo area is an area reserved for communication between the
power manager and the startup/power kernel callout (see Power management).
The pminfo area contains the following members. These members are
customizable in the power manager structure, and are power-manager dependent:
- wakeup_pending
- A flag used by the power kernel callout to determine if the wakeup has
already occurred, and by the power manager to keep track of all of the
wakeup device interrupts that have occurred.
- The power manager requires write access, so it can modify this entry.
- wakeup_condition
- Indicates to the power manager what caused the wakeup: a power-on reset, or
an interrupt from peripherals or other devices. This value is set by the
power kernel callout.
- managed_storage
- An area where the power manager can store any data it chooses. This storage
is not persistent storage; it needs to be manually stored and restored by
the startup and power kernel callout.
- This area can be modified at startup. It is initialized by the init_pminfo() function, which takes a
single argument: the size, in bytes, to set aside for the
managed_storage array.