Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.
NdisMoveToMappedMemory copies data from a system-space buffer to device memory that was mapped during initialization with NdisMMapIoSpace.
VOID NdisMoveToMappedMemory( _Out_ PVOID Destination, _In_ PVOID Source, _In_ ULONG Length );
- Destination [out]
Specifies the base virtual address within a mapped device memory range where the copy should begin. This address must fall at least Length bytes from the end of the mapped range.
- Source [in]
Pointer to a system-space buffer from which this function copies data to the destination range. This buffer must be at least Length bytes in size.
- Length [in]
Specifies the number of bytes to copy.
A NIC driver calls NdisMoveToMappedMemory to copy data from a buffer in the host to mapped device memory, as, for example, when transferring data from a protocol-supplied buffer or miniport driver-allocated staging buffer to the NIC for a transmit.
Both the Source and Destination pointers are virtual addresses. The virtual range specified by Destination and Length must fall within a range that was mapped with NdisMMapIoSpace.
Callers of NdisMoveToMappedMemory can run at any IRQL when the given Source and Destination are resident. Otherwise, callers must be running at IRQL < DISPATCH_LEVEL, as, for example if the Source address is on the stack.
|Not supported for NDIS 6.0 drivers in Windows Vista. Supported for NDIS 5.1 drivers in Windows Vista and Windows XP.|
|See Remarks section|