NDIS DMA Support Implementation (Windows CE 5.0)

Send Feedback

The Windows CE implementation of NDIS does not support direct memory access (DMA) operations inherently. In Windows CE, however, you can extend the driver functionality by creating the functionality within a miniport if needed. The required functionality can be implemented directly in the miniport driver code. DMA libraries may be provided for use by driver developers or the miniport driver might need to implement DMA entirely on its own.

To implement DMA transfers, miniport drivers must allocate and manage virtual memory buffers. To implement DMA transfers in a miniport, you must reserve a physical memory block from the memory map of a Windows CE–based device. Then, you must map the device's memory block to virtual address pointers by using the VirtualAlloc and VirtualCopy functions. Mapping the device's memory block to virtual address pointers provides the miniport with a shared memory block to send and receive packet buffers.

See Also

VirtualAlloc | VirtualCopy | Direct Memory Access

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.