summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/shared
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-02-26 11:08:31 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-02-28 09:06:16 +0100
commite1d7bf002efda1f6319bd8aa64ad1c9712103d54 (patch)
tree2bc5f9f3c1a2cda166b209a54cd493fd4ed47ee2 /c/src/lib/libcpu/shared
parentrtems: Use size_t for cache line size (diff)
downloadrtems-e1d7bf002efda1f6319bd8aa64ad1c9712103d54.tar.bz2
rtems: Add cache size functions
Add rtems_cache_get_data_cache_size() and rtems_cache_get_instruction_cache_size().
Diffstat (limited to 'c/src/lib/libcpu/shared')
-rw-r--r--c/src/lib/libcpu/shared/src/cache_manager.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/c/src/lib/libcpu/shared/src/cache_manager.c b/c/src/lib/libcpu/shared/src/cache_manager.c
index 8fa0477748..c55f12c823 100644
--- a/c/src/lib/libcpu/shared/src/cache_manager.c
+++ b/c/src/lib/libcpu/shared/src/cache_manager.c
@@ -160,6 +160,16 @@ rtems_cache_get_data_line_size( void )
}
+size_t
+rtems_cache_get_data_cache_size( uint32_t level )
+{
+#if defined(CPU_CACHE_SUPPORT_PROVIDES_CACHE_SIZE_FUNCTIONS)
+ return _CPU_cache_get_data_cache_size( level );
+#else
+ return 0;
+#endif
+}
+
/*
* This function freezes the data cache; cache lines
* are not replaced.
@@ -275,6 +285,17 @@ rtems_cache_get_instruction_line_size( void )
}
+size_t
+rtems_cache_get_instruction_cache_size( uint32_t level )
+{
+#if defined(CPU_CACHE_SUPPORT_PROVIDES_CACHE_SIZE_FUNCTIONS)
+ return _CPU_cache_get_instruction_cache_size( level );
+#else
+ return 0;
+#endif
+}
+
+
/*
* This function freezes the instruction cache; cache lines
* are not replaced.