summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-04-27 10:11:47 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-04-27 10:11:47 +0200
commit7f530355045f245b980dcb7f7c5b4f1685c55f7c (patch)
tree9e0c3250cfd54290001feec6769e347f0c815174
parentbsps/cache: Clarify range functions support (diff)
downloadrtems-7f530355045f245b980dcb7f7c5b4f1685c55f7c.tar.bz2
bsps/sparc: Use inline functions for cache manager
-rw-r--r--c/src/lib/libcpu/sparc/Makefile.am2
-rw-r--r--c/src/lib/libcpu/sparc/cache/cache.c42
-rw-r--r--c/src/lib/libcpu/sparc/cache/cache_.h34
3 files changed, 32 insertions, 46 deletions
diff --git a/c/src/lib/libcpu/sparc/Makefile.am b/c/src/lib/libcpu/sparc/Makefile.am
index ceed3bcc65..c7565d8dd8 100644
--- a/c/src/lib/libcpu/sparc/Makefile.am
+++ b/c/src/lib/libcpu/sparc/Makefile.am
@@ -10,7 +10,7 @@ include_libcpu_HEADERS += include/libcpu/byteorder.h
include_libcpu_HEADERS += include/libcpu/access.h
noinst_PROGRAMS += cache.rel
-cache_rel_SOURCES = cache/cache.c cache/cache_.h \
+cache_rel_SOURCES = cache/cache_.h \
../shared/src/cache_manager.c
cache_rel_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/cache
cache_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
diff --git a/c/src/lib/libcpu/sparc/cache/cache.c b/c/src/lib/libcpu/sparc/cache/cache.c
deleted file mode 100644
index e87f7c0fc6..0000000000
--- a/c/src/lib/libcpu/sparc/cache/cache.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Cache Management Support Routines for the SPARC
- */
-
-#include <rtems.h>
-#include "cache_.h"
-
-
-#if defined(HAS_INSTRUCTION_CACHE)
-
-void _CPU_cache_invalidate_entire_instruction ( void )
-{
- __asm__ volatile ("flush");
-}
-
-/* XXX these need to be addressed */
-
-void _CPU_cache_invalidate_instruction_range(
- const void *i_addr,
- size_t n_bytes
-)
-{
-}
-
-void _CPU_cache_freeze_instruction ( void )
-{
-}
-
-void _CPU_cache_unfreeze_instruction ( void )
-{
-}
-
-void _CPU_cache_enable_instruction ( void )
-{
-}
-
-void _CPU_cache_disable_instruction ( void )
-{
-}
-
-#endif
-/* end of file */
diff --git a/c/src/lib/libcpu/sparc/cache/cache_.h b/c/src/lib/libcpu/sparc/cache/cache_.h
index 81852a20c5..f7ff00c0b0 100644
--- a/c/src/lib/libcpu/sparc/cache/cache_.h
+++ b/c/src/lib/libcpu/sparc/cache/cache_.h
@@ -14,12 +14,40 @@
* FIXME: Some functions simply have not been implemented.
*/
+/* This define is set in a Makefile */
#if defined(HAS_INSTRUCTION_CACHE)
-#define CPU_CACHE_SUPPORT_PROVIDES_RANGE_FUNCTIONS
+
#define CPU_INSTRUCTION_CACHE_ALIGNMENT 0
-#endif
-#include <libcpu/cache.h>
+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_freeze_instruction ( void )
+{
+}
+
+static inline void _CPU_cache_unfreeze_instruction ( void )
+{
+}
+
+static inline void _CPU_cache_enable_instruction ( void )
+{
+}
+
+static inline void _CPU_cache_disable_instruction ( void )
+{
+}
+
+#endif /* defined(HAS_INSTRUCTION_CACHE) */
#endif
/* end of include file */