Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:24:08

0001 /*
0002  *  SPARC Cache Manager Support
0003  */
0004 
0005 /*
0006  * CACHE MANAGER: The following functions are CPU-specific.
0007  * They provide the basic implementation for the rtems_* cache
0008  * management routines. If a given function has no meaning for the CPU,
0009  * it does nothing by default.
0010  *
0011  * FIXME: Some functions simply have not been implemented.
0012  */
0013 
0014 #include <stddef.h>
0015 
0016 #define CPU_INSTRUCTION_CACHE_ALIGNMENT 0
0017 
0018 #define CPU_CACHE_SUPPORT_PROVIDES_RANGE_FUNCTIONS
0019 
0020 static inline void _CPU_cache_invalidate_entire_instruction ( void )
0021 {
0022   __asm__ volatile ("flush");
0023 }
0024 
0025 static inline void _CPU_cache_invalidate_instruction_range(
0026   const void *i_addr,
0027   size_t      n_bytes
0028 )
0029 {
0030   __asm__ volatile ("flush");
0031 }
0032 
0033 /* XXX these need to be addressed */
0034 
0035 static inline void _CPU_cache_freeze_instruction ( void )
0036 {
0037 }
0038 
0039 static inline void _CPU_cache_unfreeze_instruction ( void )
0040 {
0041 }
0042 
0043 static inline void _CPU_cache_enable_instruction ( void )
0044 {
0045 }
0046 
0047 static inline void _CPU_cache_disable_instruction (   void )
0048 {
0049 }
0050 
0051 #include "../../../shared/cache/cacheimpl.h"