dcache_inval(D3DK) —
.IX \f4dcache_inval\fP(D3DK)
NAME
dcache_inval − invalidate the data cache
SYNOPSIS
#include <sys/types.h>
#include <sys/buf.h>
#include <sys/iosystm.h>
void dcache_inval(paddr_t paddr int len);
ARGUMENTS
paddrthe physical address of the first location
lenthe number of bytes to be invalidated
DESCRIPTION
When the standard driver support routines that automatically invalidate the cache (for example, bp_iosetup) are not used, dcache_inval should be called to perform explicit cache invalidate operations if the target memory is not cache-inhibited.
The data cache must be invalidated before a kernel read of device memory or before a read DMA transfer is initiated to ensure that memory accesses will return non-stale data. Note that no other reads should occur until the DMA transfer is completed.
On systems that implement bus snooping, dcache_inval has no effect.
RETURN VALUE
None.
LEVEL
Base, interrupt.
SEE ALSO
dcache_sync(D3DK)
DDI/DKI