Jungo WinDriver  
Official Documentation

◆ WD_DMASyncIo

#define WD_DMASyncIo (   h,
  pDma 
)     WD_FUNCTION(IOCTL_WD_DMA_SYNC_IO, h, pDma, SIZE_OF_WD_DMA(pDma), FALSE)

Synchronizes the I/O caches with the DMA buffer, by flushing the data from the I/O caches and updating the CPU caches.

Parameters
[in]hHandle to WinDriver's kernel-mode driver as received from WD_Open()
[in]pDmaPointer to a DMA information structure, received from a previous call to WD_DMALock()
Returns
Returns WD_STATUS_SUCCESS (0) on success, or an appropriate error code otherwise
Remarks
After a DMA transfer has been completed, the data can still be in the I/O cache, which resides between the host's physical memory and the bus-master DMA device, but not yet in the host's main memory. If the CPU accesses the memory, it might read the wrong data from the CPU cache. To ensure a consistent view of the memory for the CPU, you should call WD_DMASyncIo() after a DMA transfer in order to flush the data from the I/O cache and update the CPU cache with the new data. The function also flushes additional caches and buffers between the device and memory, such as caches associated with bus extenders or bridges.
WD_DMASyncIo(hWD, &dma);
#define WD_DMASyncIo(h, pDma)
Synchronizes the I/O caches with the DMA buffer, by flushing the data from the I/O caches and updatin...
Definition: windrvr.h:2166

Definition at line 2166 of file windrvr.h.