NdisMoveFromMappedMemory

This function copies data from device memory that was mapped during initialization with the NdisMMapIoSpace function to a system-space buffer.

At a Glance

Header file: Ndis.h
Windows CE versions: 2.0 and later

Syntax

VOID NdisMoveFromMappedMemory( OUT PVOID Destination,
IN PVOID Source, IN ULONG Length );

Parameters

Destination
Pointer to a system-space buffer into which this function copies data from mapped device memory. This buffer must be at least Length bytes in size.
Source
Specifies the base virtual address within mapped device memory from which to copy the data. This address must fall at least Length bytes from the end of the mapped range.
Length
Specifies the number of bytes to copy.

Remarks

An NIC driver calls this function to copy data from NIC memory into a buffer in the host, as, for example, when transferring received data into a protocol-supplied buffer or miniport-allocated staging buffer.

Both the Source and Destination pointers are virtual addresses. The virtual range specified by Source and Length must fall within a range of device memory that was mapped during initialization with the NdisMMapIoSpace function.

A driver that calls this function 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 Destination address is on the stack.

See Also

NdisAllocateMemory, NdisMMapIoSpace, NdisMoveMappedMemory, NdisMoveToMappedMemory