summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-03-09 08:56:56 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-03-12 10:21:51 +0100
commit088a1f856f6e740700bb6f2d3b2ab5ecc205e5ea (patch)
treea413eac4df5fa34ca6bb3d4d17473ea7a2a74aea
parentc-user: Move "Device Driver Configuration" (diff)
downloadrtems-docs-088a1f856f6e740700bb6f2d3b2ab5ecc205e5ea.tar.bz2
c-user: Move "Multiprocessing Configuration"
Update #3836.
-rw-r--r--c-user/config/index.rst182
-rw-r--r--c-user/config/mpci.rst184
2 files changed, 185 insertions, 181 deletions
diff --git a/c-user/config/index.rst b/c-user/config/index.rst
index 3fafa97..1413920 100644
--- a/c-user/config/index.rst
+++ b/c-user/config/index.rst
@@ -25,187 +25,7 @@ Configuring a System
scheduler-general
scheduler-clustered
device-driver
-
-Multiprocessing Configuration
-=============================
-
-This section defines the multiprocessing related system configuration
-parameters supported by ``<rtems/confdefs.h>``. They are only used if RTEMS
-was built with the ``--enable-multiprocessing`` build configuration option.
-The multiprocessing (MPCI) support must not be confused with the SMP support.
-
-Additionally, this class of Configuration Constants are only applicable if
-``CONFIGURE_MP_APPLICATION`` is defined.
-
-.. index:: CONFIGURE_MP_APPLICATION
-
-.. _CONFIGURE_MP_APPLICATION:
-
-CONFIGURE_MP_APPLICATION
-------------------------
-
-CONSTANT:
- ``CONFIGURE_MP_APPLICATION``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- This configuration parameter must be defined to indicate that the
- application intends to be part of a multiprocessing
- configuration. Additional configuration parameters are assumed to be
- provided.
-
-NOTES:
- This has no impact unless RTEMS was built with the
- ``--enable-multiprocessing`` build configuration option.
-
-.. index:: CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
-
-.. _CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS:
-
-CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
------------------------------------
-
-CONSTANT:
- ``CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS``
-
-DATA TYPE:
- Unsigned integer (``uint32_t``).
-
-RANGE:
- Positive.
-
-DEFAULT VALUE:
- The default value is 32.
-
-DESCRIPTION:
- ``CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS`` is the maximum number of
- concurrently active global objects in a multiprocessor system.
-
-NOTES:
- This value corresponds to the total number of objects which can be created
- with the ``RTEMS_GLOBAL`` attribute.
-
-.. index:: CONFIGURE_MP_MAXIMUM_NODES
-
-.. _CONFIGURE_MP_MAXIMUM_NODES:
-
-CONFIGURE_MP_MAXIMUM_NODES
---------------------------
-
-CONSTANT:
- ``CONFIGURE_MP_MAXIMUM_NODES``
-
-DATA TYPE:
- Unsigned integer (``uint32_t``).
-
-RANGE:
- Positive.
-
-DEFAULT VALUE:
- The default value is 2.
-
-DESCRIPTION:
- ``CONFIGURE_MP_MAXIMUM_NODES`` is the maximum number of nodes in a
- multiprocessor system.
-
-NOTES:
- None.
-
-.. index:: CONFIGURE_MP_MAXIMUM_PROXIES
-
-.. _CONFIGURE_MP_MAXIMUM_PROXIES:
-
-CONFIGURE_MP_MAXIMUM_PROXIES
-----------------------------
-
-CONSTANT:
- ``CONFIGURE_MP_MAXIMUM_PROXIES``
-
-DATA TYPE:
- Unsigned integer (``uint32_t``).
-
-RANGE:
- Undefined or positive.
-
-DEFAULT VALUE:
- The default value is 32.
-
-DESCRIPTION:
- ``CONFIGURE_MP_MAXIMUM_PROXIES`` is the maximum number of concurrently
- active thread/task proxies on this node in a multiprocessor system.
-
-NOTES:
- Since a proxy is used to represent a remote task/thread which is blocking
- on this node. This configuration parameter reflects the maximum number of
- remote tasks/threads which can be blocked on objects on this node.
-
-.. COMMENT: XXX - add xref to proxy discussion in MP chapter
-
-.. index:: CONFIGURE_MP_MPCI_TABLE_POINTER
-
-.. _CONFIGURE_MP_MPCI_TABLE_POINTER:
-
-CONFIGURE_MP_MPCI_TABLE_POINTER
--------------------------------
-
-CONSTANT:
- ``CONFIGURE_MP_MPCI_TABLE_POINTER``
-
-DATA TYPE:
- pointer to ``rtems_mpci_table``
-
-RANGE:
- undefined or valid pointer
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_MP_MPCI_TABLE_POINTER`` is the pointer to the MPCI
- Configuration Table. The default value of this field is``&MPCI_table``.
-
-NOTES:
- RTEMS provides a Shared Memory MPCI Device Driver which can be used on any
- Multiprocessor System assuming the BSP provides the proper set of
- supporting methods.
-
-.. index:: CONFIGURE_MP_NODE_NUMBER
-
-.. _CONFIGURE_MP_NODE_NUMBER:
-
-CONFIGURE_MP_NODE_NUMBER
-------------------------
-
-CONSTANT:
- ``CONFIGURE_MP_NODE_NUMBER``
-
-DATA TYPE:
- Unsigned integer (``uint32_t``).
-
-RANGE:
- Positive.
-
-DEFAULT VALUE:
- The default value is ``NODE_NUMBER``, which is assumed to be set by the
- compilation environment.
-
-DESCRIPTION:
- ``CONFIGURE_MP_NODE_NUMBER`` is the node number of this node in a
- multiprocessor system.
-
-NOTES:
- In the RTEMS Multiprocessing Test Suite, the node number is derived from
- the Makefile variable ``NODE_NUMBER``. The same code is compiled with the
- ``NODE_NUMBER`` set to different values. The test programs behave
- differently based upon their node number.
+ mpci
PCI Library Configuration
=========================
diff --git a/c-user/config/mpci.rst b/c-user/config/mpci.rst
new file mode 100644
index 0000000..4adffe3
--- /dev/null
+++ b/c-user/config/mpci.rst
@@ -0,0 +1,184 @@
+.. SPDX-License-Identifier: CC-BY-SA-4.0
+
+.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
+
+Multiprocessing Configuration
+=============================
+
+This section defines the multiprocessing related system configuration
+parameters supported by ``<rtems/confdefs.h>``. They are only used if RTEMS
+was built with the ``--enable-multiprocessing`` build configuration option.
+The multiprocessing (MPCI) support must not be confused with the SMP support.
+
+Additionally, this class of Configuration Constants are only applicable if
+``CONFIGURE_MP_APPLICATION`` is defined.
+
+.. index:: CONFIGURE_MP_APPLICATION
+
+.. _CONFIGURE_MP_APPLICATION:
+
+CONFIGURE_MP_APPLICATION
+------------------------
+
+CONSTANT:
+ ``CONFIGURE_MP_APPLICATION``
+
+DATA TYPE:
+ Boolean feature macro.
+
+RANGE:
+ Defined or undefined.
+
+DEFAULT VALUE:
+ This is not defined by default.
+
+DESCRIPTION:
+ This configuration parameter must be defined to indicate that the
+ application intends to be part of a multiprocessing
+ configuration. Additional configuration parameters are assumed to be
+ provided.
+
+NOTES:
+ This has no impact unless RTEMS was built with the
+ ``--enable-multiprocessing`` build configuration option.
+
+.. index:: CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
+
+.. _CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS:
+
+CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
+-----------------------------------
+
+CONSTANT:
+ ``CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS``
+
+DATA TYPE:
+ Unsigned integer (``uint32_t``).
+
+RANGE:
+ Positive.
+
+DEFAULT VALUE:
+ The default value is 32.
+
+DESCRIPTION:
+ ``CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS`` is the maximum number of
+ concurrently active global objects in a multiprocessor system.
+
+NOTES:
+ This value corresponds to the total number of objects which can be created
+ with the ``RTEMS_GLOBAL`` attribute.
+
+.. index:: CONFIGURE_MP_MAXIMUM_NODES
+
+.. _CONFIGURE_MP_MAXIMUM_NODES:
+
+CONFIGURE_MP_MAXIMUM_NODES
+--------------------------
+
+CONSTANT:
+ ``CONFIGURE_MP_MAXIMUM_NODES``
+
+DATA TYPE:
+ Unsigned integer (``uint32_t``).
+
+RANGE:
+ Positive.
+
+DEFAULT VALUE:
+ The default value is 2.
+
+DESCRIPTION:
+ ``CONFIGURE_MP_MAXIMUM_NODES`` is the maximum number of nodes in a
+ multiprocessor system.
+
+NOTES:
+ None.
+
+.. index:: CONFIGURE_MP_MAXIMUM_PROXIES
+
+.. _CONFIGURE_MP_MAXIMUM_PROXIES:
+
+CONFIGURE_MP_MAXIMUM_PROXIES
+----------------------------
+
+CONSTANT:
+ ``CONFIGURE_MP_MAXIMUM_PROXIES``
+
+DATA TYPE:
+ Unsigned integer (``uint32_t``).
+
+RANGE:
+ Undefined or positive.
+
+DEFAULT VALUE:
+ The default value is 32.
+
+DESCRIPTION:
+ ``CONFIGURE_MP_MAXIMUM_PROXIES`` is the maximum number of concurrently
+ active thread/task proxies on this node in a multiprocessor system.
+
+NOTES:
+ Since a proxy is used to represent a remote task/thread which is blocking
+ on this node. This configuration parameter reflects the maximum number of
+ remote tasks/threads which can be blocked on objects on this node.
+
+.. COMMENT: XXX - add xref to proxy discussion in MP chapter
+
+.. index:: CONFIGURE_MP_MPCI_TABLE_POINTER
+
+.. _CONFIGURE_MP_MPCI_TABLE_POINTER:
+
+CONFIGURE_MP_MPCI_TABLE_POINTER
+-------------------------------
+
+CONSTANT:
+ ``CONFIGURE_MP_MPCI_TABLE_POINTER``
+
+DATA TYPE:
+ pointer to ``rtems_mpci_table``
+
+RANGE:
+ undefined or valid pointer
+
+DEFAULT VALUE:
+ This is not defined by default.
+
+DESCRIPTION:
+ ``CONFIGURE_MP_MPCI_TABLE_POINTER`` is the pointer to the MPCI
+ Configuration Table. The default value of this field is``&MPCI_table``.
+
+NOTES:
+ RTEMS provides a Shared Memory MPCI Device Driver which can be used on any
+ Multiprocessor System assuming the BSP provides the proper set of
+ supporting methods.
+
+.. index:: CONFIGURE_MP_NODE_NUMBER
+
+.. _CONFIGURE_MP_NODE_NUMBER:
+
+CONFIGURE_MP_NODE_NUMBER
+------------------------
+
+CONSTANT:
+ ``CONFIGURE_MP_NODE_NUMBER``
+
+DATA TYPE:
+ Unsigned integer (``uint32_t``).
+
+RANGE:
+ Positive.
+
+DEFAULT VALUE:
+ The default value is ``NODE_NUMBER``, which is assumed to be set by the
+ compilation environment.
+
+DESCRIPTION:
+ ``CONFIGURE_MP_NODE_NUMBER`` is the node number of this node in a
+ multiprocessor system.
+
+NOTES:
+ In the RTEMS Multiprocessing Test Suite, the node number is derived from
+ the Makefile variable ``NODE_NUMBER``. The same code is compiled with the
+ ``NODE_NUMBER`` set to different values. The test programs behave
+ differently based upon their node number.