Summary of Changes Required to Port a Miniport Driver to NDIS 6.0

This topic summarizes the changes that are required to port an NDIS 5.x miniport driver to NDIS 6.0. Porting earlier drivers is similar to porting NDIS 5.x drivers.

To run in the NDIS 6.0 environment, NDIS 5.x miniport drivers must be modified as follows:

Build Environment
Replace the preprocessor definition NDIS51_MINIPORT_DRIVER with NDIS60_MINIPORT_DRIVER.

Driver Initialization

Driver Unload

Miniport Adapter Initialization

Miniport Adapter Halt and Shutdown

Send and Receive Code Paths

  • All NDIS 6.0 miniport drivers are deserialized.

  • Rewrite the send and receive code paths to use NET_BUFFER structures and NET_BUFFER_LIST structures instead of NDIS_PACKET structures.

  • If the driver uses scatter gather DMA (SGDMA) for send operations, add calls to the SGDMA functions as described in the following DMA change summary.

DMA

Interrupts

OID Requests

Status Indications

Plug and Play Events

Check for Hang and Reset

New Adapter States