Plug and Play and Power Management in Simple Hardware Drivers

A driver that supports hardware—such as a UMDF protocol function driver or a KMDF hardware function driver—differs from a software-only driver in the following ways:

  • A driver that supports hardware must initialize its device to a known state every time the device enters D0, including during system startup.

    This known state is typically fully “reset.” If the device supports interrupts or DMA, interrupts are disabled and DMA is stopped.

  • Most drivers that interact directly with their device’s hardware create one or more power-managed I/O queues.

    The framework automatically stops dispatching I/O requests from the power-managed queues whenever the device hardware is not accessible, such as when ...

Get Developing Drivers with the Windows® Driver Foundation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.