NdisMoveFromMappedMemory 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.

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

Syntax

VOID NdisMoveFromMappedMemory(
  _Out_ PVOID Destination,
  _In_  PVOID Source,
  _In_  ULONG Length
);

Parameters

  • Destination [out]
    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 [in]
    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 [in]
    Specifies the number of bytes to copy.

Return value

None

Remarks

A NIC driver calls NdisMoveFromMappedMemory 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 driver-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 NdisMMapIoSpace.

Callers of NdisMoveFromMappedMemory 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.

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

MiniportInitialize

NdisAllocateMemoryWithTag

NdisMMapIoSpace

NdisMoveMappedMemory

NdisMoveToMappedMemory

NdisReadRegisterUchar

NdisReadRegisterUlong

NdisReadRegisterUshort

NdisWriteRegisterUchar

NdisWriteRegisterUlong

NdisWriteRegisterUshort

 

 

Send comments about this topic to Microsoft