NdisFlushBuffer

This function flushes the memory region described by a specified buffer descriptor from all processor caches.

VOID NdisFlushBuffer(
IN PNDIS_BUFFER Buffer,
IN BOOLEAN WriteToDevice );

Parameters

  • Buffer
    Pointer to a buffer description mapping a buffer from which or into which data is transferred as a busmaster DMA operation.

  • WriteToDevice
    Specifies TRUE if the network adapter driver calls this function to flush a buffer before making a transfer from host memory to the network adapter.

    If the network adapter driver specifies FALSE, it must ensure that the buffer begins and ends on a cache-line boundary.

Remarks

Drivers of busmaster DMA network adapters call this function to maintain data integrity in shared memory. Flushing the buffer ensures coherency between the host memory cache and processor physical memory before a DMA transfer to or from the network interface card.

The driver flushes such a buffer when data that it shares with its network adapter might be cached. For any transfer between host memory and a busmaster DMA network adapter, the miniport must flush the buffer before the transfer starts. Such a driver also must ensure that host memory is not accessed until the transfer completes.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 2.0 and later Ndis.h   Ndislib.lib

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.