summaryrefslogtreecommitdiffstats
path: root/bsps
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2019-04-05 08:16:05 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-04-09 08:06:46 +0200
commitf9219db2a95c8285d1be22092572b4236bfe6488 (patch)
treec168ac7fdf7458cea6d7146584b2adb38d47f6a1 /bsps
parentrtems: Add rtems_scheduler_get_processor() (diff)
downloadrtems-f9219db2a95c8285d1be22092572b4236bfe6488.tar.bz2
rtems: Add rtems_scheduler_get_processor_maximum()
Add rtems_scheduler_get_processor_maximum() as a replacement for rtems_get_processor_count(). The rtems_get_processor_count() is a bit orphaned. Adopt it by the Scheduler Manager. The count is also misleading, since the processor set may have gaps and the actual count of online processors may be less than the value returned by rtems_get_processor_count(). Update #3732.
Diffstat (limited to 'bsps')
-rw-r--r--bsps/riscv/griscv/clock/clockdrv.c2
-rw-r--r--bsps/riscv/griscv/irq/irq.c4
-rw-r--r--bsps/shared/irq/irq-server.c4
-rw-r--r--bsps/sparc/leon3/clock/ckinit.c2
-rw-r--r--bsps/sparc/leon3/start/bspclean.c2
-rw-r--r--bsps/sparc/leon3/start/eirq.c4
6 files changed, 9 insertions, 9 deletions
diff --git a/bsps/riscv/griscv/clock/clockdrv.c b/bsps/riscv/griscv/clock/clockdrv.c
index 47ed6b305d..c94c167fdf 100644
--- a/bsps/riscv/griscv/clock/clockdrv.c
+++ b/bsps/riscv/griscv/clock/clockdrv.c
@@ -80,7 +80,7 @@ static void grlib_tc_tick_irqmp_timestamp_init(void)
bool done =
_Atomic_Fetch_add_uint(&counter, 1, ATOMIC_ORDER_RELAXED)
- == rtems_get_processor_count() - 1;
+ == rtems_scheduler_get_processor_maximum() - 1;
#else
bool done = true;
#endif
diff --git a/bsps/riscv/griscv/irq/irq.c b/bsps/riscv/griscv/irq/irq.c
index 721cd98ffe..e3fc8c310f 100644
--- a/bsps/riscv/griscv/irq/irq.c
+++ b/bsps/riscv/griscv/irq/irq.c
@@ -108,7 +108,7 @@ void bsp_interrupt_get_affinity(
Processor_mask *affinity
)
{
- uint32_t cpu_count = rtems_get_processor_count();
+ uint32_t cpu_count = rtems_scheduler_get_processor_maximum();
uint32_t cpu_index;
_Processor_mask_Zero(affinity);
@@ -126,7 +126,7 @@ void bsp_interrupt_set_affinity(
)
{
uint32_t unmasked = 0;
- uint32_t cpu_count = rtems_get_processor_count();
+ uint32_t cpu_count = rtems_scheduler_get_processor_maximum();
uint32_t cpu_index;
for (cpu_index = 0; cpu_index < cpu_count; ++cpu_index) {
diff --git a/bsps/shared/irq/irq-server.c b/bsps/shared/irq/irq-server.c
index 7a2bc55c48..fad0fc661f 100644
--- a/bsps/shared/irq/irq-server.c
+++ b/bsps/shared/irq/irq-server.c
@@ -60,7 +60,7 @@ static bsp_interrupt_server_context *bsp_interrupt_server_get_context(
}
#endif
- if (server_index >= rtems_get_processor_count()) {
+ if (server_index >= rtems_scheduler_get_processor_maximum()) {
*sc = RTEMS_INVALID_ID;
return NULL;
}
@@ -504,7 +504,7 @@ rtems_status_code rtems_interrupt_server_initialize(
server_count = &dummy;
}
- cpu_count = rtems_get_processor_count();
+ cpu_count = rtems_scheduler_get_processor_maximum();
#if defined(RTEMS_SMP)
instances = calloc(cpu_count, sizeof(*instances));
diff --git a/bsps/sparc/leon3/clock/ckinit.c b/bsps/sparc/leon3/clock/ckinit.c
index ad233ddb90..f485123f6b 100644
--- a/bsps/sparc/leon3/clock/ckinit.c
+++ b/bsps/sparc/leon3/clock/ckinit.c
@@ -76,7 +76,7 @@ static void leon3_tc_tick_irqmp_timestamp_init(void)
bool done =
_Atomic_Fetch_add_uint(&counter, 1, ATOMIC_ORDER_RELAXED)
- == rtems_get_processor_count() - 1;
+ == rtems_scheduler_get_processor_maximum() - 1;
#else
bool done = true;
#endif
diff --git a/bsps/sparc/leon3/start/bspclean.c b/bsps/sparc/leon3/start/bspclean.c
index 6cdc43e4d5..e11ec4b0f3 100644
--- a/bsps/sparc/leon3/start/bspclean.c
+++ b/bsps/sparc/leon3/start/bspclean.c
@@ -49,7 +49,7 @@ void bsp_fatal_extension(
*/
uint32_t max_wait = 1234567;
uint32_t self_cpu = rtems_scheduler_get_processor();
- uint32_t cpu_count = rtems_get_processor_count();
+ uint32_t cpu_count = rtems_scheduler_get_processor_maximum();
uint32_t halt_mask = 0;
uint32_t i;
diff --git a/bsps/sparc/leon3/start/eirq.c b/bsps/sparc/leon3/start/eirq.c
index 1f7be1ba74..b4cd6d2948 100644
--- a/bsps/sparc/leon3/start/eirq.c
+++ b/bsps/sparc/leon3/start/eirq.c
@@ -31,7 +31,7 @@ void bsp_interrupt_set_affinity(
)
{
uint32_t unmasked = 0;
- uint32_t cpu_count = rtems_get_processor_count();
+ uint32_t cpu_count = rtems_scheduler_get_processor_maximum();
uint32_t cpu_index;
for (cpu_index = 0; cpu_index < cpu_count; ++cpu_index) {
@@ -53,7 +53,7 @@ void bsp_interrupt_get_affinity(
Processor_mask *affinity
)
{
- uint32_t cpu_count = rtems_get_processor_count();
+ uint32_t cpu_count = rtems_scheduler_get_processor_maximum();
uint32_t cpu_index;
_Processor_mask_Zero(affinity);