[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

exec.library/CachePostDMA                        exec.library/CachePostDMA

    CachePostDMA - Take actions after to hardware DMA  (V37)

                 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.

    exec/execbase.i, CachePreDMA, CacheClearU, CacheClearE

[Back to Amiga Developer Docs]