VxWorks Reference Manual : Libraries
cacheMb930Lib - Fujitsu MB86930 (SPARClite) cache management library
cacheMb930LibInit( ) - initialize the Fujitsu MB86930 cache library
cacheMb930LockAuto( ) - enable MB86930 automatic locking of kernel instructions/data
cacheMb930ClearLine( ) - clear a line from an MB86930 cache
This library contains architecture-specific cache library functions for the Fujitsu MB86930 (SPARClite) architecture. There are separate small instruction and data caches on chip, both of which operate in write-through mode. Each cache line contains 16 bytes. Cache tags may be "flushed" by accesses to alternate space in supervisor mode. Invalidate operations are performed in software by writing zero to the cache tags in an iterative manner. Locked data cache tags are not invalidated since the data resides only in the cache and not in RAM. The global and local cache locking features are beneficial for real-time systems. Note that there is no MMU (Memory Management Unit) support.
For general information about caching, see the manual entry for cacheLib.
arch/sparc/sparclite.h, cacheLib.h
cacheMb930LibInit( ) - initialize the Fujitsu MB86930 cache library
STATUS cacheMb930LibInit ( CACHE_MODE instMode, /* instruction cache mode */ CACHE_MODE dataMode /* data cache mode */ )
This routine installs the function pointers for the Fujitsu MB86930 cache library and performs other necessary cache library initialization. The board support package selects this cache library by setting the function pointer sysCacheLibInit equal to cacheMb930LibInit( ). Note that sysCacheLibInit must be initialized on declaration, placing it in the ".data" section.
This routine invalidates the cache tags and leaves the cache disabled. It should only be called during initialization, before any cache locking has taken place.
The only available mode for the MB86930 is CACHE_WRITETHROUGH.
OK, or ERROR if cache control is not supported.
cacheMb930LockAuto( ) - enable MB86930 automatic locking of kernel instructions/data
void cacheMb930LockAuto (void)
This routine enables automatic cache locking of kernel instructions and data into MB86930 caches. Once entries are locked into the caches, they cannot be unlocked.
N/A
cacheMb930ClearLine( ) - clear a line from an MB86930 cache
STATUS cacheMb930ClearLine ( CACHE_TYPE cache, /* cache to clear entry */ void * address /* virtual address */ )
This routine flushes and invalidates a specified line from the specified MB86930 cache.
OK, or ERROR if the cache type is invalid or the cache control is not supported.