summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-07-23 11:25:28 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-07-23 15:12:53 +0200
commitb79953cfe90214e5f937b551922edb79ec53cfe8 (patch)
tree95ae60bfe438b3add64044f3b57aec3b07276cd0
parentrtems: Create attr implementation header (diff)
downloadrtems-b79953cfe90214e5f937b551922edb79ec53cfe8.tar.bz2
rtems: Create modes implementation header
Move implementation specific parts of modes.h and modes.inl into new header file modesimpl.h. The modes.h contains now only the application visible API.
-rw-r--r--cpukit/rtems/Makefile.am2
-rw-r--r--cpukit/rtems/include/rtems/rtems/modes.h18
-rw-r--r--cpukit/rtems/include/rtems/rtems/modesimpl.h (renamed from cpukit/rtems/inline/rtems/rtems/modes.inl)31
-rw-r--r--cpukit/rtems/preinstall.am8
-rw-r--r--cpukit/rtems/src/taskcreate.c2
-rw-r--r--cpukit/rtems/src/taskmode.c2
6 files changed, 35 insertions, 28 deletions
diff --git a/cpukit/rtems/Makefile.am b/cpukit/rtems/Makefile.am
index 78af7e9943..817e4ccaff 100644
--- a/cpukit/rtems/Makefile.am
+++ b/cpukit/rtems/Makefile.am
@@ -29,6 +29,7 @@ include_rtems_rtems_HEADERS += include/rtems/rtems/intr.h
include_rtems_rtems_HEADERS += include/rtems/rtems/message.h
include_rtems_rtems_HEADERS += include/rtems/rtems/messageimpl.h
include_rtems_rtems_HEADERS += include/rtems/rtems/modes.h
+include_rtems_rtems_HEADERS += include/rtems/rtems/modesimpl.h
include_rtems_rtems_HEADERS += include/rtems/rtems/object.h
include_rtems_rtems_HEADERS += include/rtems/rtems/options.h
include_rtems_rtems_HEADERS += include/rtems/rtems/optionsimpl.h
@@ -67,7 +68,6 @@ include_rtems_rtems_HEADERS += inline/rtems/rtems/asr.inl
include_rtems_rtems_HEADERS += inline/rtems/rtems/dpmem.inl
include_rtems_rtems_HEADERS += inline/rtems/rtems/event.inl
include_rtems_rtems_HEADERS += inline/rtems/rtems/eventset.inl
-include_rtems_rtems_HEADERS += inline/rtems/rtems/modes.inl
include_rtems_rtems_HEADERS += inline/rtems/rtems/part.inl
include_rtems_rtems_HEADERS += inline/rtems/rtems/ratemon.inl
include_rtems_rtems_HEADERS += inline/rtems/rtems/region.inl
diff --git a/cpukit/rtems/include/rtems/rtems/modes.h b/cpukit/rtems/include/rtems/rtems/modes.h
index 9a4bf73f91..7b07c8892f 100644
--- a/cpukit/rtems/include/rtems/rtems/modes.h
+++ b/cpukit/rtems/include/rtems/rtems/modes.h
@@ -21,6 +21,12 @@
#ifndef _RTEMS_RTEMS_MODES_H
#define _RTEMS_RTEMS_MODES_H
+#include <rtems/score/cpu.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/**
* @defgroup ClassicModes Modes
*
@@ -30,12 +36,6 @@
*/
/**@{*/
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <rtems/score/isr.h>
-
/**
* The following type defines the control block used to manage
* each a mode set.
@@ -121,15 +121,11 @@ Modes_Control rtems_interrupt_level_body(
uint32_t level
);
-#ifndef __RTEMS_APPLICATION__
-#include <rtems/rtems/modes.inl>
-#endif
+/**@}*/
#ifdef __cplusplus
}
#endif
-/**@}*/
-
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/modes.inl b/cpukit/rtems/include/rtems/rtems/modesimpl.h
index 034032154e..7aa6bcb3f0 100644
--- a/cpukit/rtems/inline/rtems/rtems/modes.inl
+++ b/cpukit/rtems/include/rtems/rtems/modesimpl.h
@@ -1,8 +1,9 @@
/**
- * @file rtems/rtems/modes.inl
+ * @file
*
- * This include file contains the static inline implementation of the
- * inlined routines in the Mode Handler
+ * @ingroup ClassicModesImpl
+ *
+ * @brief Classic Modes Implementation
*/
/* COPYRIGHT (c) 1989-2008.
@@ -13,16 +14,22 @@
* http://www.rtems.com/license/LICENSE.
*/
-#ifndef _RTEMS_RTEMS_MODES_H
-# error "Never use <rtems/rtems/modes.inl> directly; include <rtems/rtems/modes.h> instead."
-#endif
+#ifndef _RTEMS_RTEMS_MODESIMPL_H
+#define _RTEMS_RTEMS_MODESIMPL_H
-#ifndef _RTEMS_RTEMS_MODES_INL
-#define _RTEMS_RTEMS_MODES_INL
+#include <rtems/rtems/modes.h>
+#include <rtems/score/isrlevel.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
/**
- * @addtogroup ClassicModes
- * @{
+ * @defgroup ClassicModesImpl Classic Modes Implementation
+ *
+ * @ingroup ClassicModes
+ *
+ * @{
*/
/**
@@ -129,6 +136,10 @@ RTEMS_INLINE_ROUTINE void _Modes_Change (
*out_mode_set = _out_mode;
}
+#ifdef __cplusplus
+}
+#endif
+
/**@}*/
#endif
diff --git a/cpukit/rtems/preinstall.am b/cpukit/rtems/preinstall.am
index bd59ac9861..72b00a7849 100644
--- a/cpukit/rtems/preinstall.am
+++ b/cpukit/rtems/preinstall.am
@@ -87,6 +87,10 @@ $(PROJECT_INCLUDE)/rtems/rtems/modes.h: include/rtems/rtems/modes.h $(PROJECT_IN
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/modes.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/modes.h
+$(PROJECT_INCLUDE)/rtems/rtems/modesimpl.h: include/rtems/rtems/modesimpl.h $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/modesimpl.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/modesimpl.h
+
$(PROJECT_INCLUDE)/rtems/rtems/object.h: include/rtems/rtems/object.h $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/object.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/object.h
@@ -213,10 +217,6 @@ $(PROJECT_INCLUDE)/rtems/rtems/eventset.inl: inline/rtems/rtems/eventset.inl $(P
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/eventset.inl
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/eventset.inl
-$(PROJECT_INCLUDE)/rtems/rtems/modes.inl: inline/rtems/rtems/modes.inl $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/modes.inl
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/modes.inl
-
$(PROJECT_INCLUDE)/rtems/rtems/part.inl: inline/rtems/rtems/part.inl $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/part.inl
PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/part.inl
diff --git a/cpukit/rtems/src/taskcreate.c b/cpukit/rtems/src/taskcreate.c
index 1b8d2cad09..d925d84983 100644
--- a/cpukit/rtems/src/taskcreate.c
+++ b/cpukit/rtems/src/taskcreate.c
@@ -23,7 +23,7 @@
#include <rtems/rtems/attrimpl.h>
#include <rtems/rtems/status.h>
#include <rtems/rtems/support.h>
-#include <rtems/rtems/modes.h>
+#include <rtems/rtems/modesimpl.h>
#include <rtems/score/object.h>
#include <rtems/score/stack.h>
#include <rtems/score/states.h>
diff --git a/cpukit/rtems/src/taskmode.c b/cpukit/rtems/src/taskmode.c
index eb3636d172..3439f89549 100644
--- a/cpukit/rtems/src/taskmode.c
+++ b/cpukit/rtems/src/taskmode.c
@@ -22,7 +22,7 @@
#include <rtems/config.h>
#include <rtems/rtems/status.h>
#include <rtems/rtems/support.h>
-#include <rtems/rtems/modes.h>
+#include <rtems/rtems/modesimpl.h>
#include <rtems/score/object.h>
#include <rtems/score/stack.h>
#include <rtems/score/states.h>