## Input/Output Device Driver Reference

[prev][next][parent][TOC]

### Power Management States

OS/2 device drivers should support, with appropriate device actions, the following set of power states supported by the Advanced Power Management Specification.

Ready (0000h)

This state indicates that the system or device is operating at full power. Ready state responsibilities include:

-Enter State

Actions to enter this state are more accurately defined by the prior state involved in the state transition, particularly for externally powered devices.

-State Operations

Operates at maximum throughput for device performance.

-Exit State

Actions to exit this state are more accurately defined by the next state involved in the state transition, particularly for externally powered devices.

Standby (0001h)

This state indicates that the system or device is operating at a partial power level that permits energy conservation without noticeable delays in restoring power for reestablished operation.

Standby state responsibilities include:

-Enter State

The current device state can be saved in RAM for most devices (both internal and external).

-State Operations

The device is isolated from unnecessary commands and status activities that would consume power by bringing the device out of Standby. Useful commands can be processed by changing the state saved in RAM rather than programming the device immediately.

-Exit State

If a RAM-saved state is available and the saved information is modified during the Standby period, the saved values can be activated as delayed commands. As a rule, internally powered devices need not have additional support for this state. However, externally powered devices (for example, those that draw power from a port) must have device-state Save and Restore support.

Note: There is no explicit Resume notification for the Standby state. The implicit Standby Resume is based on the next time the associated code is invoked.

Suspend (0002h)

This state indicates that the system or device is operating at a partial power level that permits substantial energy conservation with accepted noticeable delays in restoring power for reestablished operation.

The Advanced Power Management Specification defines the Suspend power state as system-wide and does not currently support it as device-specific. The OS/2 architecture supports both system and device levels of usage as a desired deviation from the public standard. Suspend state responsibilities include:

-Enter State

All externally powered devices must have their device-state information saved in a RAM data area. Similarly, all internally powered devices must have their device-state information saved when the Suspend is on a device level rather than on a system/BIOS level. Because no processing is permitted in the System Suspended state, internally powered devices can be saved by the Advanced Power Management BIOS.

-State Operations

Because processing is not performed during this state, there are no in- state operation requirements for system/BIOS requests. However, for a Device Suspend (versus a system/BIOS Suspend), the device driver must provide the isolation layer between the device and the applications.

-Exit State

All externally powered devices that had their former state information saved are reconfigured to bring them back to the pre-Suspend operating mode . Internally powered devices are also brought back to the pre-Suspend operating mode when a device-level Suspend exits.

Off (0003H)

This state indicates that the system or device is not operating or receiving any amount of power. OFF state responsibilities include:

-Enter State

Actions to enter this state include complete device shutdown and disconnection from application environments. Because the device is not recoverable when this state is entered, all parameters used for reconnection must be saved to disk if needed and applicable.

-State Operations

The device is now completely unavailable, and there is no operational activity.

-Exit State

Actions to exit this state are currently defined only as a restart of the entire system environment (both hardware and software).

OEM Defined System State (0020h - 03Fh)

This range of states may be used to define OEM system states.

OEM Defined Device State (0040h - 07Fh)

This range of states may be used to define OEM device states.

All other power state values are reserved.