Docs » Autodocs » exec.library » CachePostDMA
CachePostDMA - Take actions after to hardware DMA (V37)
CachePostDMA(vaddress,&length,flags) a0 a1 d0 CachePostDMA(APTR,LONG *,ULONG);
Take all appropriate steps after Direct Memory Access (DMA). This function is primarily intended for writers of DMA device drivers. The action will depend on the CPU type installed, caching modes, and the state of any Memory Management Unit (MMU) activity. As implemented 68000 - Do nothing 68010 - Do nothing 68020 - Do nothing 68030 - Flush the data cache 68040 - Flush matching areas of the data cache ????? - External cache boards, Virtual Memory Systems, or future hardware may patch this vector to best emulate the intended behavior. With a Bus-Snooping CPU, this function my end up doing nothing.
address - Same as initially passed to CachePreDMA length - Same as initially passed to CachePreDMA flags - Values: DMA_NoModify - If the area was not modified (and thus there is no reason to flush the cache) set this bit. DMA_ReadFromRAM - Indicates that this DMA is a read from RAM to the DMA device (ie - a write to the hard drive) This flag is not required but if used must match in both the PreDMA and PostDMA calls. This flag *should* be used to help the system provide the best performance. This flag is safe in all versions of CachePostDMA()
"exec/execbase.i", CachePreDMA(), CacheClearU(), CacheClearE()
|