NdisMoveToMappedMemory function
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.
Syntax
VOID NdisMoveToMappedMemory(
_Out_ PVOID Destination,
_In_ PVOID Source,
_In_ ULONG Length
);
Parameters
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.
Return value
None
Remarks
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.
Requirements
Target platform |
Desktop |
Version |
Not supported for NDIS 6.0 drivers in Windows Vista. Supported for NDIS 5.1 drivers in Windows Vista and Windows XP. |
Header |
Ndis.h (include Ndis.h) |
IRQL |
See Remarks section |
See also