18#ifndef __LIBARCH_ARM_ARMCACHEV7_H
19#define __LIBARCH_ARM_ARMCACHEV7_H
ARMv7 cache management implementation.
Result flushLevel(u32 level, bool clean)
Clean and Invalidate by cache level.
virtual Result invalidateAddress(Type type, Address addr)
Invalidate one memory page.
Result dataFlush(bool clean)
Flush the entire data cache.
virtual Result cleanAddress(Type type, Address addr)
Clean one memory page.
CacheLevelType
Defines the cache level type bits.
@ CacheLevelInstructionData
u32 getCacheLevelId() const
Get cache level identifier.
virtual Result cleanInvalidateAddress(Type type, Address addr)
Clean and invalidate one memory page.
virtual Result invalidate(Type type)
Invalidate the entire cache.
u32 readCacheSize(u32 level, u32 type) const
Get cache size.
ARMControl m_control
ARM system control processor object.
virtual Result cleanInvalidate(Type type)
Clean and invalidate entire cache.
u32 getCacheLineSize() const
Get cache line size in bytes.
ARM System Control Coprocessor (CP15).
Cache management interface.
unsigned int u32
Unsigned 32-bit number.
unsigned long Address
A memory address.