Viewing file: cache.h (972 B) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#ifndef __ASM_AVR32_CACHE_H #define __ASM_AVR32_CACHE_H
#define L1_CACHE_SHIFT 5 #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
/* * Memory returned by kmalloc() may be used for DMA, so we must make * sure that all such allocations are cache aligned. Otherwise, * unrelated code may cause parts of the buffer to be read into the * cache before the transfer is done, causing old data to be seen by * the CPU. */ #define ARCH_DMA_MINALIGN L1_CACHE_BYTES
#ifndef __ASSEMBLER__ struct cache_info { unsigned int ways; unsigned int sets; unsigned int linesz; }; #endif /* __ASSEMBLER */
/* Cache operation constants */ #define ICACHE_FLUSH 0x00 #define ICACHE_INVALIDATE 0x01 #define ICACHE_LOCK 0x02 #define ICACHE_UNLOCK 0x03 #define ICACHE_PREFETCH 0x04
#define DCACHE_FLUSH 0x08 #define DCACHE_LOCK 0x09 #define DCACHE_UNLOCK 0x0a #define DCACHE_INVALIDATE 0x0b #define DCACHE_CLEAN 0x0c #define DCACHE_CLEAN_INVAL 0x0d
#endif /* __ASM_AVR32_CACHE_H */
|