summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-09-07 15:31:31 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-09-10 07:09:42 +0200
commitd90c8137a88f9a456b711a741b88e5c6ef5735d8 (patch)
tree58c744c076c1386333a397dab0206b43373346f1
parentuser: Add qoriq BSP section (diff)
downloadrtems-docs-d90c8137a88f9a456b711a741b88e5c6ef5735d8.tar.bz2
c-user: Mention per-processor data
Close #3507.
-rw-r--r--c-user/symmetric_multiprocessing_services.rst18
1 files changed, 18 insertions, 0 deletions
diff --git a/c-user/symmetric_multiprocessing_services.rst b/c-user/symmetric_multiprocessing_services.rst
index 638292b..b2773e7 100644
--- a/c-user/symmetric_multiprocessing_services.rst
+++ b/c-user/symmetric_multiprocessing_services.rst
@@ -791,3 +791,21 @@ from the executing to the heir thread neither the stack of the executing nor
the heir thread must be used during interrupt processing. For this purpose a
temporary per-processor stack is set up which may be used by the interrupt
prologue before the stack is switched to the interrupt stack.
+
+Per-Processor Data
+------------------
+
+RTEMS provides two means for per-processor data:
+
+1. Per-processor data which is used by RTEMS itself is contained in the
+ `Per_CPU_Control` structure. The application configuration via
+ `<rtems/confdefs.h>` creates a table of these structures
+ (`_Per_CPU_Information[]`). The table is dimensioned according to the count
+ of configured processors
+ (:ref:`CONFIGURE_MAXIMUM_PROCESSORS <CONFIGURE_MAXIMUM_PROCESSORS>`).
+
+2. For low level support libraries an API for statically allocated
+ per-processor data is available via
+ `<rtems/score/percpudata.h> <https://git.rtems.org/rtems/tree/cpukit/include/rtems/score/percpudata.h>`_.
+ This API is not intended for general application use. Please ask on the
+ development mailing list in case you want to use it.