Not all requests are related to I/O. Plug and Play and power management requests notify the driver about a variety of events related to resource assignment, device discovery, device installation and loading, driver loading, and system power state changes. The following are examples of typical events:
The computer resumes from hibernation.
The user plugs in a new device while the system is running.
The user removes an existing device while the system is running.
The computer powers down and enters a sleep state such as hibernation.
As a practical matter, Plug and Play and power events are closely related and must be managed jointly. Plug and Play and power management requests are not I/O in the strict sense of the term, but the requests are packaged as IRPs and flow through the driver in much the same way as read, write, or device I/O control requests do. The function driver typically manages Plug and Play and power state and satisfies related IRPs. Filter drivers typically just pass such requests down the stack.
Chapter 7, "Plug and Play and Power Management," describes how WDF drivers handle such requests.