[rtems commit] bsps/sparc: Fix cache support
Sebastian Huber
sebh at rtems.org
Wed Jul 19 13:56:26 UTC 2017
Module: rtems
Branch: master
Commit: 7ed8ad0adbb2b6a6e844acd422765cecc1e35957
Changeset: http://git.rtems.org/rtems/commit/?id=7ed8ad0adbb2b6a6e844acd422765cecc1e35957
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Wed Jul 19 15:54:16 2017 +0200
bsps/sparc: Fix cache support
Fix infinite loop in rtems_invalidate_multiple_instruction_lines().
Implement this function.
Close #3080.
---
c/src/lib/libcpu/sparc/cache/cache_.h | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/c/src/lib/libcpu/sparc/cache/cache_.h b/c/src/lib/libcpu/sparc/cache/cache_.h
index f7ff00c..3d4ea69 100644
--- a/c/src/lib/libcpu/sparc/cache/cache_.h
+++ b/c/src/lib/libcpu/sparc/cache/cache_.h
@@ -19,18 +19,23 @@
#define CPU_INSTRUCTION_CACHE_ALIGNMENT 0
+#define CPU_CACHE_SUPPORT_PROVIDES_RANGE_FUNCTIONS
+
static inline void _CPU_cache_invalidate_entire_instruction ( void )
{
__asm__ volatile ("flush");
}
-/* XXX these need to be addressed */
-
-static inline void _CPU_cache_invalidate_1_instruction_line (
- const void * i_addr )
+static inline void _CPU_cache_invalidate_instruction_range(
+ const void *i_addr,
+ size_t n_bytes
+)
{
+ __asm__ volatile ("flush");
}
+/* XXX these need to be addressed */
+
static inline void _CPU_cache_freeze_instruction ( void )
{
}
More information about the vc
mailing list