summaryrefslogtreecommitdiffstats
path: root/cpukit/sapi
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-05-12 09:53:35 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-05-16 09:48:32 +0200
commit6bc63df199f82b90a3ffe471b452f813bf7c7a70 (patch)
tree808da9bb2b7142457d397f8b855153ad451851c5 /cpukit/sapi
parentconfdefs.h: Fix compile error in non-SMP cfg (diff)
downloadrtems-6bc63df199f82b90a3ffe471b452f813bf7c7a70.tar.bz2
confdefs.h: Add SMP enabled field to configuration
Do not use the processor count to determine if SMP is enabled. Instead use a dedicated configuration option. Enable SMP by default in SMP configurations. Add CONFIGURE_DISABLE_SMP_CONFIGURATION to all test which would fail otherwise. Update #3001.
Diffstat (limited to 'cpukit/sapi')
-rwxr-xr-xcpukit/sapi/include/confdefs.h7
-rw-r--r--cpukit/sapi/include/rtems/config.h6
2 files changed, 12 insertions, 1 deletions
diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h
index 331e747fcc..604539b5e8 100755
--- a/cpukit/sapi/include/confdefs.h
+++ b/cpukit/sapi/include/confdefs.h
@@ -3320,6 +3320,13 @@ extern rtems_initialization_tasks_table Initialization_tasks[];
#else
false,
#endif
+ #ifdef RTEMS_SMP
+ #ifdef _CONFIGURE_SMP_APPLICATION
+ true,
+ #else
+ false,
+ #endif
+ #endif
_CONFIGURE_NUMBER_OF_INITIAL_EXTENSIONS, /* number of static extensions */
CONFIGURE_INITIAL_EXTENSION_TABLE, /* pointer to static extensions */
#if defined(RTEMS_MULTIPROCESSING)
diff --git a/cpukit/sapi/include/rtems/config.h b/cpukit/sapi/include/rtems/config.h
index ddcb77cc87..2993e70543 100644
--- a/cpukit/sapi/include/rtems/config.h
+++ b/cpukit/sapi/include/rtems/config.h
@@ -237,6 +237,10 @@ typedef struct {
*/
bool stack_allocator_avoids_work_space;
+ #ifdef RTEMS_SMP
+ bool smp_enabled;
+ #endif
+
uint32_t number_of_initial_extensions;
const rtems_extensions_table *User_extension_table;
#if defined(RTEMS_MULTIPROCESSING)
@@ -360,7 +364,7 @@ extern const rtems_configuration_table Configuration;
*/
#ifdef RTEMS_SMP
#define rtems_configuration_is_smp_enabled() \
- (rtems_configuration_get_maximum_processors() > 1)
+ (Configuration.smp_enabled)
#else
#define rtems_configuration_is_smp_enabled() \
false