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

MiniportInitialize

NdisAllocateMemoryWithTag

NdisMMapIoSpace

NdisMoveFromMappedMemory

NdisMoveMappedMemory

NdisMoveMemory

NdisReadRegisterUchar

NdisReadRegisterUlong

NdisReadRegisterUshort

NdisWriteRegisterUchar

NdisWriteRegisterUlong

NdisWriteRegisterUshort

 

 

Send comments about this topic to Microsoft