When the device driver receives a POWER IRP requesting a lower device power state change, the device driver is responsible for saving any proprietary device context needed to later turn on the device. Finally, when ACPI determines that the PCI bus is waking the system, the PCI driver scans PCI configuration space looking for which device is asserting PME, disables PME in that device, and notifies the driver for that device.ĭevice driver: The specific driver for the device is responsible for saving and restoring device context, and requesting power state changes as the policy owner for the device. When a device is enabled for wake-up, the PCI driver writes to PCI-PM registers to enable the device to fire PME (ACPI will also take an action, see the next section). When POWER IRPs request power state changes, the PCI driver writes to the PCI power management registers to set the hardware to different Dx states. For PCI-PM, the PCI driver is responsible for reading the PCI-PM registers to determine the capabilities of the hardware.
WINDOWS 7 PCI DRIVER DOWNLOAD DRIVERS
In general, the responsibilities for device drivers are as follows:īus drivers: Bus drivers are responsible for enumerating, configuring, and controlling devices. This discussion assumes that you are familiar with how Windows Driver Model (WDM) drivers handle power management events, as described in the current Windows DDK.
For more information, see Device drivers and PCI power management This article clarifies some confusion that vendors have experienced about how hardware that complies with PCI Power Management (PCI-PM) interacts with device drivers in the operating system and about how PCI-PM integrates with ACPI.