Overview of Miniport Drivers with a WDM Lower Interface

A miniport driver with a Microsoft Windows Driver Model (WDM) lower interface is also known as an NDIS-WDM miniport driver. This type of miniport driver:

  • Uses a WDM lower edge.

  • Can call both NDIS and non-NDIS functions. However, whenever possible, the miniport driver should call NDIS functions.

  • Can initialize a miniport instance that is used to control devices that are attached to a particular bus and that communicates with those devices over that bus.

For example, a miniport driver that controls devices on either Universal Serial Bus (USB) or IEEE 1394 (Firewire) buses must expose a standard NDIS miniport driver interface at its upper edge and use the class interface for the particular bus at its lower edge. Such a miniport driver communicates with devices that are attached to the bus by sending I/O request packets (IRPs) to the bus.

The following topics describe how to implement a miniport driver that uses a WDM lower edge:

Miniport Driver with a WDM Lower Edge

Registering Miniport Driver Functions for WDM Lower Edge

Initializing a Miniport Driver with a WDM Lower Edge

Issuing Commands to Communicate with Devices

Implementation Tips and Requirements for WDM Lower Edge

Compile Flags for WDM Lower Edge

Power Management for WDM Lower Edge

Installing NDIS-WDM Miniport Drivers