From 2bbea657ae366f6b73dd6ca5db98af7ea3c29759 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 17 Jul 2013 13:52:00 +0200 Subject: rtems: Create semaphore implementation header Move implementation specific parts of sem.h and sem.inl into new header file semimpl.h. The sem.h contains now only the application visible API. --- cpukit/libcsupport/src/resource_snapshot.c | 2 + cpukit/libmisc/monitor/mon-object.c | 1 + cpukit/libnetworking/rtems/rtems_glue.c | 1 + cpukit/rtems/Makefile.am | 2 +- cpukit/rtems/include/rtems/rtems/sem.h | 81 ++------------- cpukit/rtems/include/rtems/rtems/semimpl.h | 158 +++++++++++++++++++++++++++++ cpukit/rtems/include/rtems/rtems/semmp.h | 11 +- cpukit/rtems/inline/rtems/rtems/sem.inl | 98 ------------------ cpukit/rtems/preinstall.am | 9 +- cpukit/rtems/src/sem.c | 2 +- cpukit/rtems/src/semcreate.c | 2 +- cpukit/rtems/src/semdata.c | 3 +- cpukit/rtems/src/semdelete.c | 2 +- cpukit/rtems/src/semflush.c | 2 +- cpukit/rtems/src/semident.c | 2 +- cpukit/rtems/src/semmp.c | 2 +- cpukit/rtems/src/semobtain.c | 2 +- cpukit/rtems/src/semrelease.c | 2 +- cpukit/rtems/src/semtranslatereturncode.c | 2 +- cpukit/sapi/include/rtems/sptables.h | 1 - cpukit/sapi/src/rtemsapi.c | 2 +- testsuites/sptests/spintrcritical01/init.c | 3 +- testsuites/sptests/spintrcritical09/init.c | 2 + testsuites/sptests/spintrcritical16/init.c | 2 + testsuites/sptests/spsize/size.c | 4 +- testsuites/tmtests/tm26/task1.c | 1 + 26 files changed, 199 insertions(+), 200 deletions(-) create mode 100644 cpukit/rtems/include/rtems/rtems/semimpl.h delete mode 100644 cpukit/rtems/inline/rtems/rtems/sem.inl diff --git a/cpukit/libcsupport/src/resource_snapshot.c b/cpukit/libcsupport/src/resource_snapshot.c index 1ac9e63d4c..f44f2829d5 100644 --- a/cpukit/libcsupport/src/resource_snapshot.c +++ b/cpukit/libcsupport/src/resource_snapshot.c @@ -25,6 +25,8 @@ #include #include +#include + #ifdef RTEMS_POSIX_API #include #include diff --git a/cpukit/libmisc/monitor/mon-object.c b/cpukit/libmisc/monitor/mon-object.c index 77f95be591..f431fda347 100644 --- a/cpukit/libmisc/monitor/mon-object.c +++ b/cpukit/libmisc/monitor/mon-object.c @@ -20,6 +20,7 @@ #define __RTEMS_VIOLATE_KERNEL_VISIBILITY__ #include #include +#include #if defined(RTEMS_POSIX_API) #include #endif diff --git a/cpukit/libnetworking/rtems/rtems_glue.c b/cpukit/libnetworking/rtems/rtems_glue.c index 95cabe4d27..61ac9053c1 100644 --- a/cpukit/libnetworking/rtems/rtems_glue.c +++ b/cpukit/libnetworking/rtems/rtems_glue.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include diff --git a/cpukit/rtems/Makefile.am b/cpukit/rtems/Makefile.am index 31e2c3d4be..c61ca5a26b 100644 --- a/cpukit/rtems/Makefile.am +++ b/cpukit/rtems/Makefile.am @@ -33,6 +33,7 @@ include_rtems_rtems_HEADERS += include/rtems/rtems/ratemon.h include_rtems_rtems_HEADERS += include/rtems/rtems/region.h include_rtems_rtems_HEADERS += include/rtems/rtems/rtemsapi.h include_rtems_rtems_HEADERS += include/rtems/rtems/sem.h +include_rtems_rtems_HEADERS += include/rtems/rtems/semimpl.h include_rtems_rtems_HEADERS += include/rtems/rtems/signal.h include_rtems_rtems_HEADERS += include/rtems/rtems/smp.h include_rtems_rtems_HEADERS += include/rtems/rtems/status.h @@ -69,7 +70,6 @@ include_rtems_rtems_HEADERS += inline/rtems/rtems/options.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 -include_rtems_rtems_HEADERS += inline/rtems/rtems/sem.inl include_rtems_rtems_HEADERS += inline/rtems/rtems/status.inl include_rtems_rtems_HEADERS += inline/rtems/rtems/support.inl include_rtems_rtems_HEADERS += inline/rtems/rtems/tasks.inl diff --git a/cpukit/rtems/include/rtems/rtems/sem.h b/cpukit/rtems/include/rtems/rtems/sem.h index 046c0f2de8..fbe5590cfd 100644 --- a/cpukit/rtems/include/rtems/rtems/sem.h +++ b/cpukit/rtems/include/rtems/rtems/sem.h @@ -1,11 +1,9 @@ /** - * @file rtems/rtems/sem.h + * @file * - * @brief Semaphore Manager + * @ingroup ClassicSem * - * @defgroup ClassicSem Semaphores - * - * @ingroup ClassicRTEMS + * @brief Classic Semaphores API * * This include file contains all the constants and structures associated * with the Semaphore Manager. This manager utilizes standard Dijkstra @@ -32,25 +30,6 @@ #ifndef _RTEMS_RTEMS_SEM_H #define _RTEMS_RTEMS_SEM_H -/** - * @brief Instantiate Semaphore Data - * - * Semaphore Manager -- Data Instantiation - * - * This constant is defined to extern most of the time when using - * this header file. However by defining it to nothing, the data - * declared in this header file can be instantiated. This is done - * in a single per manager file. - * - */ -#ifndef RTEMS_SEM_EXTERN -#define RTEMS_SEM_EXTERN extern -#endif - -#ifdef __cplusplus -extern "C" { -#endif - #include #include #include @@ -60,6 +39,10 @@ extern "C" { #include #include +#ifdef __cplusplus +extern "C" { +#endif + /** * @defgroup ClassicSem Semaphores * @@ -108,19 +91,6 @@ typedef struct { } Core_control; } Semaphore_Control; -/** - * The following defines the information control block used to manage - * this class of objects. - */ -RTEMS_SEM_EXTERN Objects_Information _Semaphore_Information; - -/** - * @brief Semaphore Manager Initialization - * - * This routine performs the initialization necessary for this manager. - */ -void _Semaphore_Manager_initialization(void); - /** * @brief rtems_semaphore_create * @@ -238,46 +208,11 @@ rtems_status_code rtems_semaphore_flush( rtems_id id ); -/** - * @brief Semaphore Translate Core Mutex Return Code - * - * This function returns a RTEMS status code based on the mutex - * status code specified. - * - * @param[in] the_mutex_status is the mutex status code to translate - * - * @retval translated RTEMS status code - */ -rtems_status_code _Semaphore_Translate_core_mutex_return_code ( - uint32_t the_mutex_status -); - -/** - * @brief Semaphore Translate Core Semaphore Return Code - * - * This function returns a RTEMS status code based on the semaphore - * status code specified. - * - * @param[in] the_mutex_status is the semaphore status code to translate - * - * @retval translated RTEMS status code - */ -rtems_status_code _Semaphore_Translate_core_semaphore_return_code ( - uint32_t the_mutex_status -); - -#ifndef __RTEMS_APPLICATION__ -#include -#endif -#if defined(RTEMS_MULTIPROCESSING) -#include -#endif +/**@}*/ #ifdef __cplusplus } #endif -/**@}*/ - #endif /* end of include file */ diff --git a/cpukit/rtems/include/rtems/rtems/semimpl.h b/cpukit/rtems/include/rtems/rtems/semimpl.h new file mode 100644 index 0000000000..5a433e2789 --- /dev/null +++ b/cpukit/rtems/include/rtems/rtems/semimpl.h @@ -0,0 +1,158 @@ +/** + * @file + * + * @ingroup ClassicSem + * + * @brief Classic Semaphores Implementation + */ + +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + */ + +#ifndef _RTEMS_RTEMS_SEMIMPL_H +#define _RTEMS_RTEMS_SEMIMPL_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Instantiate Semaphore Data + * + * Semaphore Manager -- Data Instantiation + * + * This constant is defined to extern most of the time when using + * this header file. However by defining it to nothing, the data + * declared in this header file can be instantiated. This is done + * in a single per manager file. + * + */ +#ifndef RTEMS_SEM_EXTERN +#define RTEMS_SEM_EXTERN extern +#endif + +/** + * The following defines the information control block used to manage + * this class of objects. + */ +RTEMS_SEM_EXTERN Objects_Information _Semaphore_Information; + +/** + * @brief Semaphore Manager Initialization + * + * This routine performs the initialization necessary for this manager. + */ +void _Semaphore_Manager_initialization(void); + +/** + * @brief Semaphore Translate Core Mutex Return Code + * + * This function returns a RTEMS status code based on the mutex + * status code specified. + * + * @param[in] the_mutex_status is the mutex status code to translate + * + * @retval translated RTEMS status code + */ +rtems_status_code _Semaphore_Translate_core_mutex_return_code ( + uint32_t the_mutex_status +); + +/** + * @brief Semaphore Translate Core Semaphore Return Code + * + * This function returns a RTEMS status code based on the semaphore + * status code specified. + * + * @param[in] the_mutex_status is the semaphore status code to translate + * + * @retval translated RTEMS status code + */ +rtems_status_code _Semaphore_Translate_core_semaphore_return_code ( + uint32_t the_mutex_status +); + +/** + * @brief Allocates a semaphore control block from + * the inactive chain of free semaphore control blocks. + * + * This function allocates a semaphore control block from + * the inactive chain of free semaphore control blocks. + */ +RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Allocate( void ) +{ + return (Semaphore_Control *) _Objects_Allocate( &_Semaphore_Information ); +} + +/** + * @brief Frees a semaphore control block to the + * inactive chain of free semaphore control blocks. + * + * This routine frees a semaphore control block to the + * inactive chain of free semaphore control blocks. + */ +RTEMS_INLINE_ROUTINE void _Semaphore_Free ( + Semaphore_Control *the_semaphore +) +{ + _Objects_Free( &_Semaphore_Information, &the_semaphore->Object ); +} + +/** + * @brief Maps semaphore IDs to semaphore control blocks. + * + * This function maps semaphore IDs to semaphore control blocks. + * If ID corresponds to a local semaphore, then it returns + * the_semaphore control pointer which maps to ID and location + * is set to OBJECTS_LOCAL. if the semaphore ID is global and + * resides on a remote node, then location is set to OBJECTS_REMOTE, + * and the_semaphore is undefined. Otherwise, location is set + * to OBJECTS_ERROR and the_semaphore is undefined. + */ +RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get ( + Objects_Id id, + Objects_Locations *location +) +{ + return (Semaphore_Control *) + _Objects_Get( &_Semaphore_Information, id, location ); +} + +/** + * @brief Maps semaphore IDs to semaphore control blocks. + * + * This function maps semaphore IDs to semaphore control blocks. + * If ID corresponds to a local semaphore, then it returns + * the_semaphore control pointer which maps to ID and location + * is set to OBJECTS_LOCAL. if the semaphore ID is global and + * resides on a remote node, then location is set to OBJECTS_REMOTE, + * and the_semaphore is undefined. Otherwise, location is set + * to OBJECTS_ERROR and the_semaphore is undefined. + */ +RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get_interrupt_disable ( + Objects_Id id, + Objects_Locations *location, + ISR_Level *level +) +{ + return (Semaphore_Control *) + _Objects_Get_isr_disable( &_Semaphore_Information, id, location, level ); +} + +#ifdef __cplusplus +} +#endif + +#ifdef RTEMS_MULTIPROCESSING +#include +#endif + +#endif +/* end of include file */ diff --git a/cpukit/rtems/include/rtems/rtems/semmp.h b/cpukit/rtems/include/rtems/rtems/semmp.h index d52176de7d..a3fd2d9b2e 100644 --- a/cpukit/rtems/include/rtems/rtems/semmp.h +++ b/cpukit/rtems/include/rtems/rtems/semmp.h @@ -21,17 +21,14 @@ #ifndef _RTEMS_RTEMS_SEMMP_H #define _RTEMS_RTEMS_SEMMP_H +#ifndef _RTEMS_RTEMS_SEMIMPL_H +# error "Never use directly; include instead." +#endif + #ifdef __cplusplus extern "C" { #endif -#include -#include -#include -#include -#include -#include - /** * @defgroup ClassicSEM Semaphore MP Support * diff --git a/cpukit/rtems/inline/rtems/rtems/sem.inl b/cpukit/rtems/inline/rtems/rtems/sem.inl deleted file mode 100644 index d1cdbb20e6..0000000000 --- a/cpukit/rtems/inline/rtems/rtems/sem.inl +++ /dev/null @@ -1,98 +0,0 @@ -/** - * @file rtems/rtems/sem.inl - * - * This file contains the static inlin implementation of the inlined - * routines from the Semaphore Manager. - */ - -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - */ - -#ifndef _RTEMS_RTEMS_SEM_H -# error "Never use directly; include instead." -#endif - -#ifndef _RTEMS_RTEMS_SEM_INL -#define _RTEMS_RTEMS_SEM_INL - -/** - * @addtogroup ClassicSem - * @{ - */ - -/** - * @brief Allocates a semaphore control block from - * the inactive chain of free semaphore control blocks. - * - * This function allocates a semaphore control block from - * the inactive chain of free semaphore control blocks. - */ -RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Allocate( void ) -{ - return (Semaphore_Control *) _Objects_Allocate( &_Semaphore_Information ); -} - -/** - * @brief Frees a semaphore control block to the - * inactive chain of free semaphore control blocks. - * - * This routine frees a semaphore control block to the - * inactive chain of free semaphore control blocks. - */ -RTEMS_INLINE_ROUTINE void _Semaphore_Free ( - Semaphore_Control *the_semaphore -) -{ - _Objects_Free( &_Semaphore_Information, &the_semaphore->Object ); -} - -/** - * @brief Maps semaphore IDs to semaphore control blocks. - * - * This function maps semaphore IDs to semaphore control blocks. - * If ID corresponds to a local semaphore, then it returns - * the_semaphore control pointer which maps to ID and location - * is set to OBJECTS_LOCAL. if the semaphore ID is global and - * resides on a remote node, then location is set to OBJECTS_REMOTE, - * and the_semaphore is undefined. Otherwise, location is set - * to OBJECTS_ERROR and the_semaphore is undefined. - */ -RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get ( - Objects_Id id, - Objects_Locations *location -) -{ - return (Semaphore_Control *) - _Objects_Get( &_Semaphore_Information, id, location ); -} - -/** - * @brief Maps semaphore IDs to semaphore control blocks. - * - * This function maps semaphore IDs to semaphore control blocks. - * If ID corresponds to a local semaphore, then it returns - * the_semaphore control pointer which maps to ID and location - * is set to OBJECTS_LOCAL. if the semaphore ID is global and - * resides on a remote node, then location is set to OBJECTS_REMOTE, - * and the_semaphore is undefined. Otherwise, location is set - * to OBJECTS_ERROR and the_semaphore is undefined. - */ -RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get_interrupt_disable ( - Objects_Id id, - Objects_Locations *location, - ISR_Level *level -) -{ - return (Semaphore_Control *) - _Objects_Get_isr_disable( &_Semaphore_Information, id, location, level ); -} - -/**@}*/ - -#endif -/* end of include file */ diff --git a/cpukit/rtems/preinstall.am b/cpukit/rtems/preinstall.am index 128d78f789..b1e8368bf5 100644 --- a/cpukit/rtems/preinstall.am +++ b/cpukit/rtems/preinstall.am @@ -103,6 +103,10 @@ $(PROJECT_INCLUDE)/rtems/rtems/sem.h: include/rtems/rtems/sem.h $(PROJECT_INCLUD $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/sem.h PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/sem.h +$(PROJECT_INCLUDE)/rtems/rtems/semimpl.h: include/rtems/rtems/semimpl.h $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/semimpl.h +PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/semimpl.h + $(PROJECT_INCLUDE)/rtems/rtems/signal.h: include/rtems/rtems/signal.h $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp) $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/signal.h PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/signal.h @@ -136,7 +140,6 @@ $(PROJECT_INCLUDE)/rtems/rtems/atomic.h: include/rtems/rtems/atomic.h $(PROJECT_ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/atomic.h PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/atomic.h endif - $(PROJECT_INCLUDE)/rtems/rtems/mainpage.h: mainpage.h $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp) $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/mainpage.h PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/mainpage.h @@ -222,10 +225,6 @@ $(PROJECT_INCLUDE)/rtems/rtems/region.inl: inline/rtems/rtems/region.inl $(PROJE $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/region.inl PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/region.inl -$(PROJECT_INCLUDE)/rtems/rtems/sem.inl: inline/rtems/rtems/sem.inl $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/sem.inl -PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/sem.inl - $(PROJECT_INCLUDE)/rtems/rtems/status.inl: inline/rtems/rtems/status.inl $(PROJECT_INCLUDE)/rtems/rtems/$(dirstamp) $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/rtems/status.inl PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/rtems/status.inl diff --git a/cpukit/rtems/src/sem.c b/cpukit/rtems/src/sem.c index 4e22dacb36..47188e2cd5 100644 --- a/cpukit/rtems/src/sem.c +++ b/cpukit/rtems/src/sem.c @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semcreate.c b/cpukit/rtems/src/semcreate.c index e7f7b77c50..60ce2cc6d8 100644 --- a/cpukit/rtems/src/semcreate.c +++ b/cpukit/rtems/src/semcreate.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semdata.c b/cpukit/rtems/src/semdata.c index d19f0cc876..ca4fb17f08 100644 --- a/cpukit/rtems/src/semdata.c +++ b/cpukit/rtems/src/semdata.c @@ -21,5 +21,4 @@ /* instantiate semaphore data */ #define RTEMS_SEM_EXTERN -#include -#include +#include diff --git a/cpukit/rtems/src/semdelete.c b/cpukit/rtems/src/semdelete.c index 12eb37f51a..070529258b 100644 --- a/cpukit/rtems/src/semdelete.c +++ b/cpukit/rtems/src/semdelete.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semflush.c b/cpukit/rtems/src/semflush.c index bed91aa13f..0b5aaeb659 100644 --- a/cpukit/rtems/src/semflush.c +++ b/cpukit/rtems/src/semflush.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semident.c b/cpukit/rtems/src/semident.c index b770d69ef4..df6f05047f 100644 --- a/cpukit/rtems/src/semident.c +++ b/cpukit/rtems/src/semident.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semmp.c b/cpukit/rtems/src/semmp.c index 1712c66a4f..02e1d98559 100644 --- a/cpukit/rtems/src/semmp.c +++ b/cpukit/rtems/src/semmp.c @@ -24,7 +24,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semobtain.c b/cpukit/rtems/src/semobtain.c index 5b68974d2a..38917823c4 100644 --- a/cpukit/rtems/src/semobtain.c +++ b/cpukit/rtems/src/semobtain.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semrelease.c b/cpukit/rtems/src/semrelease.c index a5da108736..be3f7d0579 100644 --- a/cpukit/rtems/src/semrelease.c +++ b/cpukit/rtems/src/semrelease.c @@ -40,7 +40,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/rtems/src/semtranslatereturncode.c b/cpukit/rtems/src/semtranslatereturncode.c index a06a84871d..531a904039 100644 --- a/cpukit/rtems/src/semtranslatereturncode.c +++ b/cpukit/rtems/src/semtranslatereturncode.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/cpukit/sapi/include/rtems/sptables.h b/cpukit/sapi/include/rtems/sptables.h index f32729c7eb..3c26de466f 100644 --- a/cpukit/sapi/include/rtems/sptables.h +++ b/cpukit/sapi/include/rtems/sptables.h @@ -43,7 +43,6 @@ extern "C" { #include #include #include -#include #include #include diff --git a/cpukit/sapi/src/rtemsapi.c b/cpukit/sapi/src/rtemsapi.c index d59daa19c5..f4370fe649 100644 --- a/cpukit/sapi/src/rtemsapi.c +++ b/cpukit/sapi/src/rtemsapi.c @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include diff --git a/testsuites/sptests/spintrcritical01/init.c b/testsuites/sptests/spintrcritical01/init.c index 7859a14a0e..9e1bbaa05a 100644 --- a/testsuites/sptests/spintrcritical01/init.c +++ b/testsuites/sptests/spintrcritical01/init.c @@ -11,10 +11,11 @@ #include "config.h" #endif -#define __RTEMS_VIOLATE_KERNEL_VISIBILITY__ 1 #include #include +#include + /* forward declarations to avoid warnings */ rtems_task Init(rtems_task_argument argument); rtems_timer_service_routine test_release_from_isr(rtems_id timer, void *arg); diff --git a/testsuites/sptests/spintrcritical09/init.c b/testsuites/sptests/spintrcritical09/init.c index a00aae0e31..a7f79b2be8 100644 --- a/testsuites/sptests/spintrcritical09/init.c +++ b/testsuites/sptests/spintrcritical09/init.c @@ -15,6 +15,8 @@ #include #include +#include + static rtems_id Semaphore; static bool case_hit; diff --git a/testsuites/sptests/spintrcritical16/init.c b/testsuites/sptests/spintrcritical16/init.c index 4d551bae79..4a32de2a47 100644 --- a/testsuites/sptests/spintrcritical16/init.c +++ b/testsuites/sptests/spintrcritical16/init.c @@ -15,6 +15,8 @@ #include #include +#include + /* forward declarations to avoid warnings */ rtems_task Init(rtems_task_argument argument); rtems_timer_service_routine test_release_from_isr(rtems_id timer, void *arg); diff --git a/testsuites/sptests/spsize/size.c b/testsuites/sptests/spsize/size.c index 2a77927dda..3e5e52e968 100644 --- a/testsuites/sptests/spsize/size.c +++ b/testsuites/sptests/spsize/size.c @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include #include @@ -355,7 +355,7 @@ uninitialized = /*scheduler.h*/ SCHEDULER_OVHD + -/*sem.h*/ (sizeof _Semaphore_Information) + +/*semimpl.h*/ (sizeof _Semaphore_Information) + #if defined(RTEMS_MULTIPROCESSING) /*semmp.h*/ 0 + diff --git a/testsuites/tmtests/tm26/task1.c b/testsuites/tmtests/tm26/task1.c index 5cf3e7a2b6..2c8ddfca61 100644 --- a/testsuites/tmtests/tm26/task1.c +++ b/testsuites/tmtests/tm26/task1.c @@ -20,6 +20,7 @@ #include #include +#include /* TEST DATA */ rtems_id Semaphore_id; -- cgit v1.2.3