c-user: Use rubric for configuration options

Clear the page for each configuration options similar to the directives.

Use a rubric instead of a definition list for the application
configuration options similar to the directive documentation pages.  For
direcives and application configuration options use the same rubric
order.

Generalize value constraints to constraints.

This patch does not change hand written content.
This commit is contained in:
Sebastian Huber 2021-11-16 08:17:31 +01:00
parent 1badb5f479
commit 1c8ce332e2
14 changed files with 4292 additions and 3014 deletions

View File

@ -28,6 +28,10 @@ This section describes configuration options related to the Block Device Cache
.. Generated from spec:/acfg/if/appl-needs-libblock .. Generated from spec:/acfg/if/appl-needs-libblock
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_LIBBLOCK .. index:: CONFIGURE_APPLICATION_NEEDS_LIBBLOCK
.. _CONFIGURE_APPLICATION_NEEDS_LIBBLOCK: .. _CONFIGURE_APPLICATION_NEEDS_LIBBLOCK:
@ -35,27 +39,36 @@ This section describes configuration options related to the Block Device Cache
CONFIGURE_APPLICATION_NEEDS_LIBBLOCK CONFIGURE_APPLICATION_NEEDS_LIBBLOCK
------------------------------------ ------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_LIBBLOCK`` ``CONFIGURE_APPLICATION_NEEDS_LIBBLOCK``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Block Device Cache is In case this configuration option is defined, then the Block Device Cache is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
Each option of the Block Device Cache (bdbuf) configuration can be explicitly Each option of the Block Device Cache (bdbuf) configuration can be explicitly
set by the user with the configuration options below. The Block Device Cache set by the user with the configuration options below. The Block Device Cache
is used for example by the RFS and DOSFS filesystems. is used for example by the RFS and DOSFS filesystems.
.. Generated from spec:/acfg/if/bdbuf-buffer-max-size .. Generated from spec:/acfg/if/bdbuf-buffer-max-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BDBUF_BUFFER_MAX_SIZE .. index:: CONFIGURE_BDBUF_BUFFER_MAX_SIZE
.. _CONFIGURE_BDBUF_BUFFER_MAX_SIZE: .. _CONFIGURE_BDBUF_BUFFER_MAX_SIZE:
@ -63,33 +76,38 @@ NOTES:
CONFIGURE_BDBUF_BUFFER_MAX_SIZE CONFIGURE_BDBUF_BUFFER_MAX_SIZE
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BDBUF_BUFFER_MAX_SIZE`` ``CONFIGURE_BDBUF_BUFFER_MAX_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 4096. The default value is 4096.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be an integral multiple of
:ref:`CONFIGURE_BDBUF_BUFFER_MIN_SIZE`.
DESCRIPTION:
The value of this configuration option defines the maximum size of a buffer The value of this configuration option defines the maximum size of a buffer
in bytes. in bytes.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be an integral multiple of
:ref:`CONFIGURE_BDBUF_BUFFER_MIN_SIZE`.
.. Generated from spec:/acfg/if/bdbuf-buffer-min-size .. Generated from spec:/acfg/if/bdbuf-buffer-min-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BDBUF_BUFFER_MIN_SIZE .. index:: CONFIGURE_BDBUF_BUFFER_MIN_SIZE
.. _CONFIGURE_BDBUF_BUFFER_MIN_SIZE: .. _CONFIGURE_BDBUF_BUFFER_MIN_SIZE:
@ -97,33 +115,38 @@ NOTES:
CONFIGURE_BDBUF_BUFFER_MIN_SIZE CONFIGURE_BDBUF_BUFFER_MIN_SIZE
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BDBUF_BUFFER_MIN_SIZE`` ``CONFIGURE_BDBUF_BUFFER_MIN_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 512. The default value is 512.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the minimum size of a buffer The value of this configuration option defines the minimum size of a buffer
in bytes. in bytes.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/bdbuf-cache-memory-size .. Generated from spec:/acfg/if/bdbuf-cache-memory-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BDBUF_CACHE_MEMORY_SIZE .. index:: CONFIGURE_BDBUF_CACHE_MEMORY_SIZE
.. _CONFIGURE_BDBUF_CACHE_MEMORY_SIZE: .. _CONFIGURE_BDBUF_CACHE_MEMORY_SIZE:
@ -131,33 +154,38 @@ NOTES:
CONFIGURE_BDBUF_CACHE_MEMORY_SIZE CONFIGURE_BDBUF_CACHE_MEMORY_SIZE
--------------------------------- ---------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BDBUF_CACHE_MEMORY_SIZE`` ``CONFIGURE_BDBUF_CACHE_MEMORY_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 32768. The default value is 32768.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `SIZE_MAX
<https://en.cppreference.com/w/c/types/limits>`_.
DESCRIPTION:
The value of this configuration option defines the size of the cache memory The value of this configuration option defines the size of the cache memory
in bytes. in bytes.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`SIZE_MAX <https://en.cppreference.com/w/c/types/limits>`_.
.. Generated from spec:/acfg/if/bdbuf-max-read-ahead-blocks .. Generated from spec:/acfg/if/bdbuf-max-read-ahead-blocks
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS .. index:: CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS
.. _CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS: .. _CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS:
@ -165,35 +193,44 @@ NOTES:
CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS
------------------------------------- -------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS`` ``CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the maximum blocks per The value of this configuration option defines the maximum blocks per
read-ahead request. read-ahead request.
NOTES: .. rubric:: NOTES:
A value of 0 disables the read-ahead task (default). The read-ahead task A value of 0 disables the read-ahead task (default). The read-ahead task
will issue speculative read transfers if a sequential access pattern is will issue speculative read transfers if a sequential access pattern is
detected. This can improve the performance on some systems. detected. This can improve the performance on some systems.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/bdbuf-max-write-blocks .. Generated from spec:/acfg/if/bdbuf-max-write-blocks
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BDBUF_MAX_WRITE_BLOCKS .. index:: CONFIGURE_BDBUF_MAX_WRITE_BLOCKS
.. _CONFIGURE_BDBUF_MAX_WRITE_BLOCKS: .. _CONFIGURE_BDBUF_MAX_WRITE_BLOCKS:
@ -201,33 +238,38 @@ NOTES:
CONFIGURE_BDBUF_MAX_WRITE_BLOCKS CONFIGURE_BDBUF_MAX_WRITE_BLOCKS
-------------------------------- --------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BDBUF_MAX_WRITE_BLOCKS`` ``CONFIGURE_BDBUF_MAX_WRITE_BLOCKS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 16. The default value is 16.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the maximum blocks per write The value of this configuration option defines the maximum blocks per write
request. request.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/bdbuf-read-ahead-task-priority .. Generated from spec:/acfg/if/bdbuf-read-ahead-task-priority
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY .. index:: CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY
.. _CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY: .. _CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY:
@ -235,28 +277,34 @@ NOTES:
CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY
---------------------------------------- ----------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY`` ``CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 15. The default value is 15.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a valid Classic API task
The value of this configuration option defines the read-ahead task priority.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler priority. The set of valid task priorities depends on the scheduler
configuration. configuration.
DESCRIPTION:
The value of this configuration option defines the read-ahead task priority.
NOTES:
None.
.. Generated from spec:/acfg/if/bdbuf-task-stack-size .. Generated from spec:/acfg/if/bdbuf-task-stack-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BDBUF_TASK_STACK_SIZE .. index:: CONFIGURE_BDBUF_TASK_STACK_SIZE
.. _CONFIGURE_BDBUF_TASK_STACK_SIZE: .. _CONFIGURE_BDBUF_TASK_STACK_SIZE:
@ -264,39 +312,45 @@ NOTES:
CONFIGURE_BDBUF_TASK_STACK_SIZE CONFIGURE_BDBUF_TASK_STACK_SIZE
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BDBUF_TASK_STACK_SIZE`` ``CONFIGURE_BDBUF_TASK_STACK_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is :c:macro:`RTEMS_MINIMUM_STACK_SIZE`. The default value is :c:macro:`RTEMS_MINIMUM_STACK_SIZE`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It shall be small enough so that the task stack space calculation carried
out by ``<rtems/confdefs.h>`` does not overflow an integer of type
`uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the task stack size of the The value of this configuration option defines the task stack size of the
Block Device Cache tasks in bytes. Block Device Cache tasks in bytes.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option shall be small enough so that the task
stack space calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/bdbuf-swapout-block-hold .. Generated from spec:/acfg/if/bdbuf-swapout-block-hold
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SWAPOUT_BLOCK_HOLD .. index:: CONFIGURE_SWAPOUT_BLOCK_HOLD
.. _CONFIGURE_SWAPOUT_BLOCK_HOLD: .. _CONFIGURE_SWAPOUT_BLOCK_HOLD:
@ -304,33 +358,38 @@ NOTES:
CONFIGURE_SWAPOUT_BLOCK_HOLD CONFIGURE_SWAPOUT_BLOCK_HOLD
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SWAPOUT_BLOCK_HOLD`` ``CONFIGURE_SWAPOUT_BLOCK_HOLD``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 1000. The default value is 1000.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the swapout task maximum block The value of this configuration option defines the swapout task maximum block
hold time in milliseconds. hold time in milliseconds.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/bdbuf-swapout-swap-period .. Generated from spec:/acfg/if/bdbuf-swapout-swap-period
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SWAPOUT_SWAP_PERIOD .. index:: CONFIGURE_SWAPOUT_SWAP_PERIOD
.. _CONFIGURE_SWAPOUT_SWAP_PERIOD: .. _CONFIGURE_SWAPOUT_SWAP_PERIOD:
@ -338,33 +397,38 @@ NOTES:
CONFIGURE_SWAPOUT_SWAP_PERIOD CONFIGURE_SWAPOUT_SWAP_PERIOD
----------------------------- -----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SWAPOUT_SWAP_PERIOD`` ``CONFIGURE_SWAPOUT_SWAP_PERIOD``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 250. The default value is 250.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the swapout task swap period The value of this configuration option defines the swapout task swap period
in milliseconds. in milliseconds.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/bdbuf-swapout-task-priority .. Generated from spec:/acfg/if/bdbuf-swapout-task-priority
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SWAPOUT_TASK_PRIORITY .. index:: CONFIGURE_SWAPOUT_TASK_PRIORITY
.. _CONFIGURE_SWAPOUT_TASK_PRIORITY: .. _CONFIGURE_SWAPOUT_TASK_PRIORITY:
@ -372,28 +436,34 @@ NOTES:
CONFIGURE_SWAPOUT_TASK_PRIORITY CONFIGURE_SWAPOUT_TASK_PRIORITY
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SWAPOUT_TASK_PRIORITY`` ``CONFIGURE_SWAPOUT_TASK_PRIORITY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 15. The default value is 15.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a valid Classic API task
The value of this configuration option defines the swapout task priority.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler priority. The set of valid task priorities depends on the scheduler
configuration. configuration.
DESCRIPTION:
The value of this configuration option defines the swapout task priority.
NOTES:
None.
.. Generated from spec:/acfg/if/bdbuf-swapout-worker-tasks .. Generated from spec:/acfg/if/bdbuf-swapout-worker-tasks
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SWAPOUT_WORKER_TASKS .. index:: CONFIGURE_SWAPOUT_WORKER_TASKS
.. _CONFIGURE_SWAPOUT_WORKER_TASKS: .. _CONFIGURE_SWAPOUT_WORKER_TASKS:
@ -401,32 +471,37 @@ NOTES:
CONFIGURE_SWAPOUT_WORKER_TASKS CONFIGURE_SWAPOUT_WORKER_TASKS
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SWAPOUT_WORKER_TASKS`` ``CONFIGURE_SWAPOUT_WORKER_TASKS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the swapout worker task count. The value of this configuration option defines the swapout worker task count.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/bdbuf-swapout-worker-taskp-riority .. Generated from spec:/acfg/if/bdbuf-swapout-worker-taskp-riority
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY .. index:: CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY
.. _CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY: .. _CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY:
@ -434,23 +509,25 @@ NOTES:
CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY
-------------------------------------- --------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY`` ``CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 15. The default value is 15.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler
configuration.
DESCRIPTION:
The value of this configuration option defines the swapout worker task The value of this configuration option defines the swapout worker task
priority. priority.
NOTES: .. rubric:: CONSTRAINTS:
None.
The value of the configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler
configuration.

View File

@ -30,6 +30,10 @@ configuration options may have a BSP-specific setting which is defined by
.. Generated from spec:/acfg/if/bsp-idle-task-body .. Generated from spec:/acfg/if/bsp-idle-task-body
.. raw:: latex
\clearpage
.. index:: BSP_IDLE_TASK_BODY .. index:: BSP_IDLE_TASK_BODY
.. _BSP_IDLE_TASK_BODY: .. _BSP_IDLE_TASK_BODY:
@ -37,20 +41,20 @@ configuration options may have a BSP-specific setting which is defined by
BSP_IDLE_TASK_BODY BSP_IDLE_TASK_BODY
------------------ ------------------
CONSTANT: .. rubric:: CONSTANT:
``BSP_IDLE_TASK_BODY`` ``BSP_IDLE_TASK_BODY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is BSP-specific. The default value is BSP-specific.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void *( *idle_body )( uintptr_t )``.
DESCRIPTION:
If If
* this configuration option is defined by the BSP * this configuration option is defined by the BSP
@ -60,13 +64,23 @@ DESCRIPTION:
then the value of this configuration option defines the default value of then the value of this configuration option defines the default value of
:ref:`CONFIGURE_IDLE_TASK_BODY`. :ref:`CONFIGURE_IDLE_TASK_BODY`.
NOTES: .. rubric:: NOTES:
As it has knowledge of the specific CPU model, system controller logic, and As it has knowledge of the specific CPU model, system controller logic, and
peripheral buses, a BSP-specific IDLE task may be capable of turning peripheral buses, a BSP-specific IDLE task may be capable of turning
components off to save power during extended periods of no task activity. components off to save power during extended periods of no task activity.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void *( *idle_body )( uintptr_t )``.
.. Generated from spec:/acfg/if/bsp-idle-task-stack-size .. Generated from spec:/acfg/if/bsp-idle-task-stack-size
.. raw:: latex
\clearpage
.. index:: BSP_IDLE_TASK_STACK_SIZE .. index:: BSP_IDLE_TASK_STACK_SIZE
.. _BSP_IDLE_TASK_STACK_SIZE: .. _BSP_IDLE_TASK_STACK_SIZE:
@ -74,27 +88,20 @@ NOTES:
BSP_IDLE_TASK_STACK_SIZE BSP_IDLE_TASK_STACK_SIZE
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``BSP_IDLE_TASK_STACK_SIZE`` ``BSP_IDLE_TASK_STACK_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is BSP-specific. The default value is BSP-specific.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to a BSP-specific and
application-specific minimum value.
* It shall be small enough so that the IDLE task stack area calculation
carried out by ``<rtems/confdefs.h>`` does not overflow an integer of
type `size_t <https://en.cppreference.com/w/c/types/size_t>`_.
DESCRIPTION:
If If
* this configuration option is defined by the BSP * this configuration option is defined by the BSP
@ -104,11 +111,24 @@ DESCRIPTION:
then the value of this configuration option defines the default value of then the value of this configuration option defines the default value of
:ref:`CONFIGURE_IDLE_TASK_STACK_SIZE`. :ref:`CONFIGURE_IDLE_TASK_STACK_SIZE`.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to a
BSP-specific and application-specific minimum value.
* The value of the configuration option shall be small enough so that the IDLE
task stack area calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `size_t
<https://en.cppreference.com/w/c/types/size_t>`_.
.. Generated from spec:/acfg/if/bsp-initial-extension .. Generated from spec:/acfg/if/bsp-initial-extension
.. raw:: latex
\clearpage
.. index:: BSP_INITIAL_EXTENSION .. index:: BSP_INITIAL_EXTENSION
.. _BSP_INITIAL_EXTENSION: .. _BSP_INITIAL_EXTENSION:
@ -116,20 +136,20 @@ NOTES:
BSP_INITIAL_EXTENSION BSP_INITIAL_EXTENSION
--------------------- ---------------------
CONSTANT: .. rubric:: CONSTANT:
``BSP_INITIAL_EXTENSION`` ``BSP_INITIAL_EXTENSION``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is BSP-specific. The default value is BSP-specific.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a list of initializers for
structures of type :c:type:`rtems_extensions_table`.
DESCRIPTION:
If If
* this configuration option is defined by the BSP * this configuration option is defined by the BSP
@ -139,12 +159,22 @@ DESCRIPTION:
then the value of this configuration option is used to initialize the table then the value of this configuration option is used to initialize the table
of initial user extensions. of initial user extensions.
NOTES: .. rubric:: NOTES:
The value of this configuration option is placed after the entries of all The value of this configuration option is placed after the entries of all
other initial user extensions. other initial user extensions.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a list of initializers for
structures of type :c:type:`rtems_extensions_table`.
.. Generated from spec:/acfg/if/bsp-interrupt-stack-size .. Generated from spec:/acfg/if/bsp-interrupt-stack-size
.. raw:: latex
\clearpage
.. index:: BSP_INTERRUPT_STACK_SIZE .. index:: BSP_INTERRUPT_STACK_SIZE
.. _BSP_INTERRUPT_STACK_SIZE: .. _BSP_INTERRUPT_STACK_SIZE:
@ -152,30 +182,20 @@ NOTES:
BSP_INTERRUPT_STACK_SIZE BSP_INTERRUPT_STACK_SIZE
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``BSP_INTERRUPT_STACK_SIZE`` ``BSP_INTERRUPT_STACK_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is BSP-specific. The default value is BSP-specific.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to a BSP-specific and
application-specific minimum value.
* It shall be small enough so that the interrupt stack area calculation
carried out by ``<rtems/confdefs.h>`` does not overflow an integer of
type `size_t <https://en.cppreference.com/w/c/types/size_t>`_.
* It shall be aligned according to
:c:macro:`CPU_INTERRUPT_STACK_ALIGNMENT`.
DESCRIPTION:
If If
* this configuration option is defined by the BSP * this configuration option is defined by the BSP
@ -185,11 +205,27 @@ DESCRIPTION:
then the value of this configuration option defines the default value of then the value of this configuration option defines the default value of
:ref:`CONFIGURE_INTERRUPT_STACK_SIZE`. :ref:`CONFIGURE_INTERRUPT_STACK_SIZE`.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to a
BSP-specific and application-specific minimum value.
* The value of the configuration option shall be small enough so that the
interrupt stack area calculation carried out by ``<rtems/confdefs.h>`` does
not overflow an integer of type `size_t
<https://en.cppreference.com/w/c/types/size_t>`_.
* The value of the configuration option shall be aligned according to
:c:macro:`CPU_INTERRUPT_STACK_ALIGNMENT`.
.. Generated from spec:/acfg/if/bsp-prerequisite-drivers .. Generated from spec:/acfg/if/bsp-prerequisite-drivers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_BSP_PREREQUISITE_DRIVERS .. index:: CONFIGURE_BSP_PREREQUISITE_DRIVERS
.. _CONFIGURE_BSP_PREREQUISITE_DRIVERS: .. _CONFIGURE_BSP_PREREQUISITE_DRIVERS:
@ -197,20 +233,20 @@ NOTES:
CONFIGURE_BSP_PREREQUISITE_DRIVERS CONFIGURE_BSP_PREREQUISITE_DRIVERS
---------------------------------- ----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_BSP_PREREQUISITE_DRIVERS`` ``CONFIGURE_BSP_PREREQUISITE_DRIVERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is BSP-specific. The default value is BSP-specific.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a list of initializers for
structures of type :c:type:`rtems_extensions_table`.
DESCRIPTION:
If If
* this configuration option is defined by the BSP * this configuration option is defined by the BSP
@ -220,13 +256,23 @@ DESCRIPTION:
then the value of this configuration option is used to add BSP-provided then the value of this configuration option is used to add BSP-provided
prerequisite drivers to the Device Driver Table. prerequisite drivers to the Device Driver Table.
NOTES: .. rubric:: NOTES:
The value of this configuration option is placed before the entries of all The value of this configuration option is placed before the entries of all
other initial user extensions (including other initial user extensions (including
:ref:`CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS`). :ref:`CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS`).
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a list of initializers for
structures of type :c:type:`rtems_extensions_table`.
.. Generated from spec:/acfg/if/disable-bsp-settings .. Generated from spec:/acfg/if/disable-bsp-settings
.. raw:: latex
\clearpage
.. index:: CONFIGURE_DISABLE_BSP_SETTINGS .. index:: CONFIGURE_DISABLE_BSP_SETTINGS
.. _CONFIGURE_DISABLE_BSP_SETTINGS: .. _CONFIGURE_DISABLE_BSP_SETTINGS:
@ -234,17 +280,21 @@ NOTES:
CONFIGURE_DISABLE_BSP_SETTINGS CONFIGURE_DISABLE_BSP_SETTINGS
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_DISABLE_BSP_SETTINGS`` ``CONFIGURE_DISABLE_BSP_SETTINGS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the following BSP related In case this configuration option is defined, then the following BSP related
configuration options are undefined: configuration options are undefined:
@ -260,11 +310,12 @@ DESCRIPTION:
* :ref:`CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK` * :ref:`CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK`
NOTES:
None.
.. Generated from spec:/acfg/if/malloc-bsp-supports-sbrk .. Generated from spec:/acfg/if/malloc-bsp-supports-sbrk
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK .. index:: CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK
.. _CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK: .. _CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK:
@ -272,17 +323,21 @@ NOTES:
CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK
---------------------------------- ----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK`` ``CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
If If
* this configuration option is defined by the BSP * this configuration option is defined by the BSP
@ -294,6 +349,7 @@ DESCRIPTION:
memory allocation functions are unable to allocate memory, they will call the memory allocation functions are unable to allocate memory, they will call the
BSP supplied :c:func:`sbrk` function to obtain more memory. BSP supplied :c:func:`sbrk` function to obtain more memory.
NOTES: .. rubric:: NOTES:
This option should not be defined by the application. Only the BSP knows how This option should not be defined by the application. Only the BSP knows how
it allocates memory to the C Program Heap. it allocates memory to the C Program Heap.

View File

@ -27,6 +27,10 @@ This section describes configuration options related to the Classic API.
.. Generated from spec:/acfg/if/max-barriers .. Generated from spec:/acfg/if/max-barriers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_BARRIERS .. index:: CONFIGURE_MAXIMUM_BARRIERS
.. _CONFIGURE_MAXIMUM_BARRIERS: .. _CONFIGURE_MAXIMUM_BARRIERS:
@ -34,42 +38,51 @@ This section describes configuration options related to the Classic API.
CONFIGURE_MAXIMUM_BARRIERS CONFIGURE_MAXIMUM_BARRIERS
-------------------------- --------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_BARRIERS`` ``CONFIGURE_MAXIMUM_BARRIERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Barriers that can be concurrently active. API Barriers that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-message-queues .. Generated from spec:/acfg/if/max-message-queues
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_MESSAGE_QUEUES .. index:: CONFIGURE_MAXIMUM_MESSAGE_QUEUES
.. _CONFIGURE_MAXIMUM_MESSAGE_QUEUES: .. _CONFIGURE_MAXIMUM_MESSAGE_QUEUES:
@ -77,44 +90,53 @@ NOTES:
CONFIGURE_MAXIMUM_MESSAGE_QUEUES CONFIGURE_MAXIMUM_MESSAGE_QUEUES
-------------------------------- --------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_MESSAGE_QUEUES`` ``CONFIGURE_MAXIMUM_MESSAGE_QUEUES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Message Queues that can be concurrently active. API Message Queues that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. You have to account for the memory used to :ref:`ConfigUnlimitedObjects`. You have to account for the memory used to
store the messages of each message queue, see store the messages of each message queue, see
:ref:`CONFIGURE_MESSAGE_BUFFER_MEMORY`. :ref:`CONFIGURE_MESSAGE_BUFFER_MEMORY`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-partitions .. Generated from spec:/acfg/if/max-partitions
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_PARTITIONS .. index:: CONFIGURE_MAXIMUM_PARTITIONS
.. _CONFIGURE_MAXIMUM_PARTITIONS: .. _CONFIGURE_MAXIMUM_PARTITIONS:
@ -122,42 +144,51 @@ NOTES:
CONFIGURE_MAXIMUM_PARTITIONS CONFIGURE_MAXIMUM_PARTITIONS
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_PARTITIONS`` ``CONFIGURE_MAXIMUM_PARTITIONS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Partitions that can be concurrently active. API Partitions that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-periods .. Generated from spec:/acfg/if/max-periods
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_PERIODS .. index:: CONFIGURE_MAXIMUM_PERIODS
.. _CONFIGURE_MAXIMUM_PERIODS: .. _CONFIGURE_MAXIMUM_PERIODS:
@ -165,42 +196,51 @@ NOTES:
CONFIGURE_MAXIMUM_PERIODS CONFIGURE_MAXIMUM_PERIODS
------------------------- -------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_PERIODS`` ``CONFIGURE_MAXIMUM_PERIODS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Periods that can be concurrently active. API Periods that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-ports .. Generated from spec:/acfg/if/max-ports
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_PORTS .. index:: CONFIGURE_MAXIMUM_PORTS
.. _CONFIGURE_MAXIMUM_PORTS: .. _CONFIGURE_MAXIMUM_PORTS:
@ -208,42 +248,51 @@ NOTES:
CONFIGURE_MAXIMUM_PORTS CONFIGURE_MAXIMUM_PORTS
----------------------- -----------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_PORTS`` ``CONFIGURE_MAXIMUM_PORTS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Ports that can be concurrently active. API Ports that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-regions .. Generated from spec:/acfg/if/max-regions
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_REGIONS .. index:: CONFIGURE_MAXIMUM_REGIONS
.. _CONFIGURE_MAXIMUM_REGIONS: .. _CONFIGURE_MAXIMUM_REGIONS:
@ -251,42 +300,51 @@ NOTES:
CONFIGURE_MAXIMUM_REGIONS CONFIGURE_MAXIMUM_REGIONS
------------------------- -------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_REGIONS`` ``CONFIGURE_MAXIMUM_REGIONS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Regions that can be concurrently active. API Regions that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-semaphores .. Generated from spec:/acfg/if/max-semaphores
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_SEMAPHORES .. index:: CONFIGURE_MAXIMUM_SEMAPHORES
.. _CONFIGURE_MAXIMUM_SEMAPHORES: .. _CONFIGURE_MAXIMUM_SEMAPHORES:
@ -294,37 +352,25 @@ NOTES:
CONFIGURE_MAXIMUM_SEMAPHORES CONFIGURE_MAXIMUM_SEMAPHORES
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_SEMAPHORES`` ``CONFIGURE_MAXIMUM_SEMAPHORES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Semaphore that can be concurrently active. API Semaphore that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
@ -332,8 +378,29 @@ NOTES:
scheduler count (see :ref:`ConfigurationSchedulerTable`). The semaphores scheduler count (see :ref:`ConfigurationSchedulerTable`). The semaphores
using the :ref:`MrsP` need a ceiling priority per scheduler. using the :ref:`MrsP` need a ceiling priority per scheduler.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-tasks .. Generated from spec:/acfg/if/max-tasks
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_TASKS .. index:: CONFIGURE_MAXIMUM_TASKS
.. _CONFIGURE_MAXIMUM_TASKS: .. _CONFIGURE_MAXIMUM_TASKS:
@ -341,41 +408,25 @@ NOTES:
CONFIGURE_MAXIMUM_TASKS CONFIGURE_MAXIMUM_TASKS
----------------------- -----------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_TASKS`` ``CONFIGURE_MAXIMUM_TASKS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It shall be small enough so that the task stack space calculation carried
out by ``<rtems/confdefs.h>`` does not overflow an integer of type
`uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Tasks that can be concurrently active. API Tasks that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
@ -392,8 +443,34 @@ NOTES:
the addition of a new configuration parameter to specify the number of the addition of a new configuration parameter to specify the number of
tasks which enable floating point support. tasks which enable floating point support.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option shall be small enough so that the task
stack space calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-thread-local-storage-size .. Generated from spec:/acfg/if/max-thread-local-storage-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE .. index:: CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE
.. _CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE: .. _CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE:
@ -401,34 +478,27 @@ NOTES:
CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE
------------------------------------------- -------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE`` ``CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `SIZE_MAX
<https://en.cppreference.com/w/c/types/limits>`_.
* It shall be an integral multiple of
:c:macro:`RTEMS_TASK_STORAGE_ALIGNMENT`.
DESCRIPTION:
If the value of this configuration option is greater than zero, then it If the value of this configuration option is greater than zero, then it
defines the maximum thread-local storage size, otherwise the thread-local defines the maximum thread-local storage size, otherwise the thread-local
storage size is defined by the linker depending on the thread-local storage storage size is defined by the linker depending on the thread-local storage
objects used by the application in the statically-linked executable. objects used by the application in the statically-linked executable.
NOTES: .. rubric:: NOTES:
This configuration option can be used to reserve space for the dynamic linking This configuration option can be used to reserve space for the dynamic linking
of modules with thread-local storage objects. of modules with thread-local storage objects.
@ -446,8 +516,24 @@ NOTES:
the RTEMS Tools can be used to obtain the thread-local storage size and the RTEMS Tools can be used to obtain the thread-local storage size and
alignment of an application executable. alignment of an application executable.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`SIZE_MAX <https://en.cppreference.com/w/c/types/limits>`_.
* The value of the configuration option shall be an integral multiple of
:c:macro:`RTEMS_TASK_STORAGE_ALIGNMENT`.
.. Generated from spec:/acfg/if/max-timers .. Generated from spec:/acfg/if/max-timers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_TIMERS .. index:: CONFIGURE_MAXIMUM_TIMERS
.. _CONFIGURE_MAXIMUM_TIMERS: .. _CONFIGURE_MAXIMUM_TIMERS:
@ -455,42 +541,51 @@ NOTES:
CONFIGURE_MAXIMUM_TIMERS CONFIGURE_MAXIMUM_TIMERS
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_TIMERS`` ``CONFIGURE_MAXIMUM_TIMERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API Timers that can be concurrently active. API Timers that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-user-extensions .. Generated from spec:/acfg/if/max-user-extensions
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_USER_EXTENSIONS .. index:: CONFIGURE_MAXIMUM_USER_EXTENSIONS
.. _CONFIGURE_MAXIMUM_USER_EXTENSIONS: .. _CONFIGURE_MAXIMUM_USER_EXTENSIONS:
@ -498,36 +593,45 @@ NOTES:
CONFIGURE_MAXIMUM_USER_EXTENSIONS CONFIGURE_MAXIMUM_USER_EXTENSIONS
--------------------------------- ---------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_USER_EXTENSIONS`` ``CONFIGURE_MAXIMUM_USER_EXTENSIONS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
DESCRIPTION:
The value of this configuration option defines the maximum number of Classic The value of this configuration option defines the maximum number of Classic
API User Extensions that can be concurrently active. API User Extensions that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class cannot be configured in unlimited allocation mode. This object class cannot be configured in unlimited allocation mode.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
.. Generated from spec:/acfg/if/min-tasks-with-user-provided-storage .. Generated from spec:/acfg/if/min-tasks-with-user-provided-storage
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE .. index:: CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE
.. _CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE: .. _CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE:
@ -535,31 +639,37 @@ NOTES:
CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE
-------------------------------------------------- --------------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE`` ``CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to :ref:`CONFIGURE_MAXIMUM_TASKS`.
DESCRIPTION:
The value of this configuration option defines the minimum count of Classic The value of this configuration option defines the minimum count of Classic
API Tasks which are constructed by :c:func:`rtems_task_construct`. API Tasks which are constructed by :c:func:`rtems_task_construct`.
NOTES: .. rubric:: NOTES:
By default, the calculation for the required memory in the RTEMS Workspace By default, the calculation for the required memory in the RTEMS Workspace
for tasks assumes that all Classic API Tasks are created by for tasks assumes that all Classic API Tasks are created by
:c:func:`rtems_task_create`. This configuration option can be used to :c:func:`rtems_task_create`. This configuration option can be used to
reduce the required memory for the system-provided task storage areas since reduce the required memory for the system-provided task storage areas since
tasks constructed by :c:func:`rtems_task_construct` use a user-provided tasks constructed by :c:func:`rtems_task_construct` use a user-provided
task storage area. task storage area.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
:ref:`CONFIGURE_MAXIMUM_TASKS`.

View File

@ -28,6 +28,10 @@ initialization task.
.. Generated from spec:/acfg/if/init-task-arguments .. Generated from spec:/acfg/if/init-task-arguments
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_ARGUMENTS .. index:: CONFIGURE_INIT_TASK_ARGUMENTS
.. _CONFIGURE_INIT_TASK_ARGUMENTS: .. _CONFIGURE_INIT_TASK_ARGUMENTS:
@ -35,28 +39,34 @@ initialization task.
CONFIGURE_INIT_TASK_ARGUMENTS CONFIGURE_INIT_TASK_ARGUMENTS
----------------------------- -----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_ARGUMENTS`` ``CONFIGURE_INIT_TASK_ARGUMENTS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be convertible to an integer
of type :c:type:`rtems_task_argument`.
DESCRIPTION:
The value of this configuration option defines task argument of the Classic The value of this configuration option defines task argument of the Classic
API initialization task. API initialization task.
NOTES: .. rubric:: CONSTRAINTS:
None.
The value of the configuration option shall be convertible to an integer of
type :c:type:`rtems_task_argument`.
.. Generated from spec:/acfg/if/init-task-attributes .. Generated from spec:/acfg/if/init-task-attributes
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_ATTRIBUTES .. index:: CONFIGURE_INIT_TASK_ATTRIBUTES
.. _CONFIGURE_INIT_TASK_ATTRIBUTES: .. _CONFIGURE_INIT_TASK_ATTRIBUTES:
@ -64,27 +74,33 @@ NOTES:
CONFIGURE_INIT_TASK_ATTRIBUTES CONFIGURE_INIT_TASK_ATTRIBUTES
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_ATTRIBUTES`` ``CONFIGURE_INIT_TASK_ATTRIBUTES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is :c:macro:`RTEMS_DEFAULT_ATTRIBUTES`. The default value is :c:macro:`RTEMS_DEFAULT_ATTRIBUTES`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a valid task attribute set.
DESCRIPTION:
The value of this configuration option defines the task attributes of the The value of this configuration option defines the task attributes of the
Classic API initialization task. Classic API initialization task.
NOTES: .. rubric:: CONSTRAINTS:
None.
The value of the configuration option shall be a valid task attribute set.
.. Generated from spec:/acfg/if/init-task-construct-storage-size .. Generated from spec:/acfg/if/init-task-construct-storage-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE .. index:: CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE
.. _CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE: .. _CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE:
@ -92,31 +108,27 @@ NOTES:
CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE
------------------------------------------ ------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE`` ``CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
This configuration option has no default value. If it is not specified, then This configuration option has no default value. If it is not specified, then
the Classic API initialization task will be created with the stack size the Classic API initialization task will be created with the stack size
defined by the :ref:`CONFIGURE_INIT_TASK_STACK_SIZE` configuration option. defined by the :ref:`CONFIGURE_INIT_TASK_STACK_SIZE` configuration option.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* It shall be defined using :c:func:`RTEMS_TASK_STORAGE_SIZE`.
DESCRIPTION:
The value of this configuration option defines the task storage size of the The value of this configuration option defines the task storage size of the
Classic API initialization task. Classic API initialization task.
NOTES: .. rubric:: NOTES:
If this configuration option is specified, then If this configuration option is specified, then
* a task storage area of the specified size is statically allocated by * a task storage area of the specified size is statically allocated by
@ -144,8 +156,22 @@ NOTES:
configuration options are mutually exclusive. configuration options are mutually exclusive.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* The value of the configuration option shall be defined using
:c:func:`RTEMS_TASK_STORAGE_SIZE`.
.. Generated from spec:/acfg/if/init-task-entrypoint .. Generated from spec:/acfg/if/init-task-entrypoint
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_ENTRY_POINT .. index:: CONFIGURE_INIT_TASK_ENTRY_POINT
.. _CONFIGURE_INIT_TASK_ENTRY_POINT: .. _CONFIGURE_INIT_TASK_ENTRY_POINT:
@ -153,29 +179,39 @@ NOTES:
CONFIGURE_INIT_TASK_ENTRY_POINT CONFIGURE_INIT_TASK_ENTRY_POINT
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_ENTRY_POINT`` ``CONFIGURE_INIT_TASK_ENTRY_POINT``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``Init``. The default value is ``Init``.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void ( *entry_point )( rtems_task_argument )``.
DESCRIPTION:
The value of this configuration option initializes the entry point of the The value of this configuration option initializes the entry point of the
Classic API initialization task. Classic API initialization task.
NOTES: .. rubric:: NOTES:
The application shall provide the function referenced by this configuration The application shall provide the function referenced by this configuration
option. option.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void ( *entry_point )( rtems_task_argument )``.
.. Generated from spec:/acfg/if/init-task-initial-modes .. Generated from spec:/acfg/if/init-task-initial-modes
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_INITIAL_MODES .. index:: CONFIGURE_INIT_TASK_INITIAL_MODES
.. _CONFIGURE_INIT_TASK_INITIAL_MODES: .. _CONFIGURE_INIT_TASK_INITIAL_MODES:
@ -183,28 +219,34 @@ NOTES:
CONFIGURE_INIT_TASK_INITIAL_MODES CONFIGURE_INIT_TASK_INITIAL_MODES
--------------------------------- ---------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_INITIAL_MODES`` ``CONFIGURE_INIT_TASK_INITIAL_MODES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
In SMP configurations, the default value is :c:macro:`RTEMS_DEFAULT_MODES` In SMP configurations, the default value is :c:macro:`RTEMS_DEFAULT_MODES`
otherwise the default value is :c:macro:`RTEMS_NO_PREEMPT`. otherwise the default value is :c:macro:`RTEMS_NO_PREEMPT`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a valid task mode set.
DESCRIPTION:
The value of this configuration option defines the initial execution mode of The value of this configuration option defines the initial execution mode of
the Classic API initialization task. the Classic API initialization task.
NOTES: .. rubric:: CONSTRAINTS:
None.
The value of the configuration option shall be a valid task mode set.
.. Generated from spec:/acfg/if/init-task-name .. Generated from spec:/acfg/if/init-task-name
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_NAME .. index:: CONFIGURE_INIT_TASK_NAME
.. _CONFIGURE_INIT_TASK_NAME: .. _CONFIGURE_INIT_TASK_NAME:
@ -212,28 +254,38 @@ NOTES:
CONFIGURE_INIT_TASK_NAME CONFIGURE_INIT_TASK_NAME
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_NAME`` ``CONFIGURE_INIT_TASK_NAME``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``rtems_build_name( 'U', 'I', '1', ' ' )``. The default value is ``rtems_build_name( 'U', 'I', '1', ' ' )``.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be convertible to an integer
of type :c:type:`rtems_name`.
DESCRIPTION:
The value of this configuration option defines the name of the Classic API The value of this configuration option defines the name of the Classic API
initialization task. initialization task.
NOTES: .. rubric:: NOTES:
Use :c:func:`rtems_build_name` to define the task name. Use :c:func:`rtems_build_name` to define the task name.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be convertible to an integer of
type :c:type:`rtems_name`.
.. Generated from spec:/acfg/if/init-task-priority .. Generated from spec:/acfg/if/init-task-priority
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_PRIORITY .. index:: CONFIGURE_INIT_TASK_PRIORITY
.. _CONFIGURE_INIT_TASK_PRIORITY: .. _CONFIGURE_INIT_TASK_PRIORITY:
@ -241,29 +293,35 @@ NOTES:
CONFIGURE_INIT_TASK_PRIORITY CONFIGURE_INIT_TASK_PRIORITY
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_PRIORITY`` ``CONFIGURE_INIT_TASK_PRIORITY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 1. The default value is 1.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler
configuration.
DESCRIPTION:
The value of this configuration option defines the initial priority of the The value of this configuration option defines the initial priority of the
Classic API initialization task. Classic API initialization task.
NOTES: .. rubric:: CONSTRAINTS:
None.
The value of the configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler
configuration.
.. Generated from spec:/acfg/if/init-task-stack-size .. Generated from spec:/acfg/if/init-task-stack-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_INIT_TASK_STACK_SIZE .. index:: CONFIGURE_INIT_TASK_STACK_SIZE
.. _CONFIGURE_INIT_TASK_STACK_SIZE: .. _CONFIGURE_INIT_TASK_STACK_SIZE:
@ -271,31 +329,25 @@ NOTES:
CONFIGURE_INIT_TASK_STACK_SIZE CONFIGURE_INIT_TASK_STACK_SIZE
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_INIT_TASK_STACK_SIZE`` ``CONFIGURE_INIT_TASK_STACK_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is :ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`. The default value is :ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* It shall be small enough so that the task stack space calculation carried
out by ``<rtems/confdefs.h>`` does not overflow an integer of type
`uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the task stack size of the The value of this configuration option defines the task stack size of the
Classic API initialization task. Classic API initialization task.
NOTES: .. rubric:: NOTES:
The The
* ``CONFIGURE_INIT_TASK_STACK_SIZE`` and * ``CONFIGURE_INIT_TASK_STACK_SIZE`` and
@ -304,8 +356,24 @@ NOTES:
configuration options are mutually exclusive. configuration options are mutually exclusive.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* The value of the configuration option shall be small enough so that the task
stack space calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/rtems-init-tasks-table .. Generated from spec:/acfg/if/rtems-init-tasks-table
.. raw:: latex
\clearpage
.. index:: CONFIGURE_RTEMS_INIT_TASKS_TABLE .. index:: CONFIGURE_RTEMS_INIT_TASKS_TABLE
.. _CONFIGURE_RTEMS_INIT_TASKS_TABLE: .. _CONFIGURE_RTEMS_INIT_TASKS_TABLE:
@ -313,21 +381,26 @@ NOTES:
CONFIGURE_RTEMS_INIT_TASKS_TABLE CONFIGURE_RTEMS_INIT_TASKS_TABLE
-------------------------------- --------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_RTEMS_INIT_TASKS_TABLE`` ``CONFIGURE_RTEMS_INIT_TASKS_TABLE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then exactly one Classic API In case this configuration option is defined, then exactly one Classic API
initialization task is configured. initialization task is configured.
NOTES: .. rubric:: NOTES:
The application shall define exactly one of the following configuration The application shall define exactly one of the following configuration
options options

View File

@ -1,7 +1,7 @@
.. SPDX-License-Identifier: CC-BY-SA-4.0 .. SPDX-License-Identifier: CC-BY-SA-4.0
.. Copyright (C) 2020, 2021 embedded brains GmbH (http://www.embedded-brains.de) .. Copyright (C) 2020, 2021 embedded brains GmbH (http://www.embedded-brains.de)
.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) .. Copyright (C) 1988, 2021 On-Line Applications Research Corporation (OAR)
.. This file is part of the RTEMS quality process and was automatically .. This file is part of the RTEMS quality process and was automatically
.. generated. If you find something that needs to be fixed or .. generated. If you find something that needs to be fixed or
@ -28,6 +28,10 @@ Note that network device drivers are not covered by the following options.
.. Generated from spec:/acfg/if/appl-does-not-need-clock-driver .. Generated from spec:/acfg/if/appl-does-not-need-clock-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER .. index:: CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
.. _CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER: .. _CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER:
@ -35,21 +39,26 @@ Note that network device drivers are not covered by the following options.
CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
------------------------------------------------ ------------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER`` ``CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then a Clock Driver may be If this configuration option is undefined, then a Clock Driver may be
initialized during system initialization. initialized during system initialization.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then **no** Clock Driver is In case this configuration option is defined, then **no** Clock Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
This configuration parameter is intended to prevent the common user error This configuration parameter is intended to prevent the common user error
of using the Hello World example as the baseline for an application and of using the Hello World example as the baseline for an application and
leaving out a clock tick source. leaving out a clock tick source.
@ -66,6 +75,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-extra-drivers .. Generated from spec:/acfg/if/appl-extra-drivers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_EXTRA_DRIVERS .. index:: CONFIGURE_APPLICATION_EXTRA_DRIVERS
.. _CONFIGURE_APPLICATION_EXTRA_DRIVERS: .. _CONFIGURE_APPLICATION_EXTRA_DRIVERS:
@ -73,32 +86,42 @@ NOTES:
CONFIGURE_APPLICATION_EXTRA_DRIVERS CONFIGURE_APPLICATION_EXTRA_DRIVERS
----------------------------------- -----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_EXTRA_DRIVERS`` ``CONFIGURE_APPLICATION_EXTRA_DRIVERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is the empty list. The default value is the empty list.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a list of initializers for
structures of type :c:type:`rtems_driver_address_table`.
DESCRIPTION:
The value of this configuration option is used to initialize the Device The value of this configuration option is used to initialize the Device
Driver Table. Driver Table.
NOTES: .. rubric:: NOTES:
The value of this configuration option is placed after the entries of other The value of this configuration option is placed after the entries of other
device driver configuration options. device driver configuration options.
See :ref:`CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS` for an alternative See :ref:`CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS` for an alternative
placement of application device driver initializers. placement of application device driver initializers.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a list of initializers for
structures of type :c:type:`rtems_driver_address_table`.
.. Generated from spec:/acfg/if/appl-needs-ata-driver .. Generated from spec:/acfg/if/appl-needs-ata-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER:
@ -106,21 +129,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER
-------------------------------------- --------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the ATA Driver is In case this configuration option is defined, then the ATA Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
Most BSPs do not include support for an ATA Driver. Most BSPs do not include support for an ATA Driver.
If this option is defined and the BSP does not have this device driver, then If this option is defined and the BSP does not have this device driver, then
@ -128,6 +156,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-clock-driver .. Generated from spec:/acfg/if/appl-needs-clock-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER:
@ -135,21 +167,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
---------------------------------------- ----------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Clock Driver is In case this configuration option is defined, then the Clock Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
The Clock Driver is responsible for providing a regular interrupt The Clock Driver is responsible for providing a regular interrupt
which invokes a clock tick directive. which invokes a clock tick directive.
@ -165,6 +202,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-console-driver .. Generated from spec:/acfg/if/appl-needs-console-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER:
@ -172,21 +213,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
------------------------------------------ ------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Console Driver is In case this configuration option is defined, then the Console Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
The Console Driver is responsible for providing the :file:`/dev/console` The Console Driver is responsible for providing the :file:`/dev/console`
device file. This device is used to initialize the standard input, output, device file. This device is used to initialize the standard input, output,
and error file descriptors. and error file descriptors.
@ -206,6 +252,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-framebuffer-driver .. Generated from spec:/acfg/if/appl-needs-framebuffer-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER:
@ -213,21 +263,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER
----------------------------------------------- -----------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Frame Buffer Driver is In case this configuration option is defined, then the Frame Buffer Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
Most BSPs do not include support for a Frame Buffer Driver. This is Most BSPs do not include support for a Frame Buffer Driver. This is
because many boards do not include the required hardware. because many boards do not include the required hardware.
@ -236,6 +291,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-ide-driver .. Generated from spec:/acfg/if/appl-needs-ide-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER:
@ -243,21 +302,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER
-------------------------------------- --------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_IDE_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the IDE Driver is In case this configuration option is defined, then the IDE Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
Most BSPs do not include support for an IDE Driver. Most BSPs do not include support for an IDE Driver.
If this option is defined and the BSP does not have this device driver, then If this option is defined and the BSP does not have this device driver, then
@ -265,6 +329,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-null-driver .. Generated from spec:/acfg/if/appl-needs-null-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER
.. index:: /dev/null .. index:: /dev/null
@ -273,25 +341,34 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER
--------------------------------------- ---------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the :file:`/dev/null` In case this configuration option is defined, then the :file:`/dev/null`
Driver is initialized during system initialization. Driver is initialized during system initialization.
NOTES: .. rubric:: NOTES:
This device driver is supported by all BSPs. This device driver is supported by all BSPs.
.. Generated from spec:/acfg/if/appl-needs-rtc-driver .. Generated from spec:/acfg/if/appl-needs-rtc-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER:
@ -299,21 +376,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER
-------------------------------------- --------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Real-Time Clock Driver In case this configuration option is defined, then the Real-Time Clock Driver
is initialized during system initialization. is initialized during system initialization.
NOTES: .. rubric:: NOTES:
Most BSPs do not include support for a real-time clock (RTC). This is because Most BSPs do not include support for a real-time clock (RTC). This is because
many boards do not include the required hardware. many boards do not include the required hardware.
@ -322,6 +404,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-simple-console-driver .. Generated from spec:/acfg/if/appl-needs-simple-console-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER:
@ -329,21 +415,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER
------------------------------------------------- -------------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Simple Console Driver In case this configuration option is defined, then the Simple Console Driver
is initialized during system initialization. is initialized during system initialization.
NOTES: .. rubric:: NOTES:
This device driver is responsible for providing the :file:`/dev/console` This device driver is responsible for providing the :file:`/dev/console`
device file. This device is used to initialize the standard input, output, device file. This device is used to initialize the standard input, output,
and error file descriptors. and error file descriptors.
@ -367,6 +458,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-simple-task-console-driver .. Generated from spec:/acfg/if/appl-needs-simple-task-console-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER:
@ -374,21 +469,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER
------------------------------------------------------ ------------------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Simple Task Console In case this configuration option is defined, then the Simple Task Console
Driver is initialized during system initialization. Driver is initialized during system initialization.
NOTES: .. rubric:: NOTES:
This device driver is responsible for providing the :file:`/dev/console` This device driver is responsible for providing the :file:`/dev/console`
device file. This device is used to initialize the standard input, output, device file. This device is used to initialize the standard input, output,
and error file descriptors. and error file descriptors.
@ -421,6 +521,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-stub-driver .. Generated from spec:/acfg/if/appl-needs-stub-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER:
@ -428,26 +532,35 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER
--------------------------------------- ---------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Stub Driver is In case this configuration option is defined, then the Stub Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
This device driver simply provides entry points that return successful and This device driver simply provides entry points that return successful and
is primarily a test fixture. It is supported by all BSPs. is primarily a test fixture. It is supported by all BSPs.
.. Generated from spec:/acfg/if/appl-needs-timer-driver .. Generated from spec:/acfg/if/appl-needs-timer-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER:
@ -455,21 +568,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
---------------------------------------- ----------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Benchmark Timer Driver is In case this configuration option is defined, then the Benchmark Timer Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
The Benchmark Timer Driver is intended for the benchmark tests of the RTEMS The Benchmark Timer Driver is intended for the benchmark tests of the RTEMS
Testsuite. Applications should not use this driver. Testsuite. Applications should not use this driver.
@ -485,6 +603,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-watchdog-driver .. Generated from spec:/acfg/if/appl-needs-watchdog-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER
.. _CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER: .. _CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER:
@ -492,21 +614,26 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER
------------------------------------------- -------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Watchdog Driver is In case this configuration option is defined, then the Watchdog Driver is
initialized during system initialization. initialized during system initialization.
NOTES: .. rubric:: NOTES:
Most BSPs do not include support for a watchdog device driver. This is Most BSPs do not include support for a watchdog device driver. This is
because many boards do not include the required hardware. because many boards do not include the required hardware.
@ -515,6 +642,10 @@ NOTES:
.. Generated from spec:/acfg/if/appl-needs-zero-driver .. Generated from spec:/acfg/if/appl-needs-zero-driver
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER .. index:: CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER
.. index:: /dev/zero .. index:: /dev/zero
@ -523,25 +654,34 @@ NOTES:
CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER
--------------------------------------- ---------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER`` ``CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the :file:`/dev/zero` In case this configuration option is defined, then the :file:`/dev/zero`
Driver is initialized during system initialization. Driver is initialized during system initialization.
NOTES: .. rubric:: NOTES:
This device driver is supported by all BSPs. This device driver is supported by all BSPs.
.. Generated from spec:/acfg/if/appl-prerequisite-drivers .. Generated from spec:/acfg/if/appl-prerequisite-drivers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS .. index:: CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS
.. _CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS: .. _CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS:
@ -549,24 +689,25 @@ NOTES:
CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS
------------------------------------------ ------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS`` ``CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is the empty list. The default value is the empty list.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a list of initializers for
structures of type :c:type:`rtems_driver_address_table`.
DESCRIPTION:
The value of this configuration option is used to initialize the Device The value of this configuration option is used to initialize the Device
Driver Table. Driver Table.
NOTES: .. rubric:: NOTES:
The value of this configuration option is placed after the entries defined by The value of this configuration option is placed after the entries defined by
:ref:`CONFIGURE_BSP_PREREQUISITE_DRIVERS` and before all other device driver :ref:`CONFIGURE_BSP_PREREQUISITE_DRIVERS` and before all other device driver
configuration options. configuration options.
@ -574,8 +715,17 @@ NOTES:
See :ref:`CONFIGURE_APPLICATION_EXTRA_DRIVERS` for an alternative placement See :ref:`CONFIGURE_APPLICATION_EXTRA_DRIVERS` for an alternative placement
of application device driver initializers. of application device driver initializers.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a list of initializers for
structures of type :c:type:`rtems_driver_address_table`.
.. Generated from spec:/acfg/if/ata-driver-task-priority .. Generated from spec:/acfg/if/ata-driver-task-priority
.. raw:: latex
\clearpage
.. index:: CONFIGURE_ATA_DRIVER_TASK_PRIORITY .. index:: CONFIGURE_ATA_DRIVER_TASK_PRIORITY
.. _CONFIGURE_ATA_DRIVER_TASK_PRIORITY: .. _CONFIGURE_ATA_DRIVER_TASK_PRIORITY:
@ -583,29 +733,39 @@ NOTES:
CONFIGURE_ATA_DRIVER_TASK_PRIORITY CONFIGURE_ATA_DRIVER_TASK_PRIORITY
---------------------------------- ----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_ATA_DRIVER_TASK_PRIORITY`` ``CONFIGURE_ATA_DRIVER_TASK_PRIORITY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 140. The default value is 140.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler
configuration.
DESCRIPTION:
The value of this configuration option defines the ATA task priority. The value of this configuration option defines the ATA task priority.
NOTES: .. rubric:: NOTES:
This configuration option is only evaluated if the configuration option This configuration option is only evaluated if the configuration option
:ref:`CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER` is defined. :ref:`CONFIGURE_APPLICATION_NEEDS_ATA_DRIVER` is defined.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a valid Classic API task
priority. The set of valid task priorities depends on the scheduler
configuration.
.. Generated from spec:/acfg/if/exception-to-signal-mapping .. Generated from spec:/acfg/if/exception-to-signal-mapping
.. raw:: latex
\clearpage
.. index:: CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING .. index:: CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING
.. _CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING: .. _CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING:
@ -613,21 +773,26 @@ NOTES:
CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING
------------------------------------- -------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING`` ``CONFIGURE_EXCEPTION_TO_SIGNAL_MAPPING``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the machine exception to In case this configuration option is defined, then the machine exception to
POSIX signal mapping is configured during system initialization. POSIX signal mapping is configured during system initialization.
NOTES: .. rubric:: NOTES:
This device driver is responsible for setting up a mapping from machine This device driver is responsible for setting up a mapping from machine
exceptions to POSIX signals so that applications may consume them and alter exceptions to POSIX signals so that applications may consume them and alter
task execution as necessary. task execution as necessary.
@ -636,6 +801,10 @@ NOTES:
.. Generated from spec:/acfg/if/max-drivers .. Generated from spec:/acfg/if/max-drivers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_DRIVERS .. index:: CONFIGURE_MAXIMUM_DRIVERS
.. _CONFIGURE_MAXIMUM_DRIVERS: .. _CONFIGURE_MAXIMUM_DRIVERS:
@ -643,13 +812,16 @@ NOTES:
CONFIGURE_MAXIMUM_DRIVERS CONFIGURE_MAXIMUM_DRIVERS
------------------------- -------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_DRIVERS`` ``CONFIGURE_MAXIMUM_DRIVERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
This is computed by default, and is set to the number of statically This is computed by default, and is set to the number of statically
configured device drivers configured using the following configuration configured device drivers configured using the following configuration
options: options:
@ -688,24 +860,26 @@ DEFAULT VALUE:
* :ref:`CONFIGURE_BSP_PREREQUISITE_DRIVERS` * :ref:`CONFIGURE_BSP_PREREQUISITE_DRIVERS`
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be less than or equal to `SIZE_MAX
<https://en.cppreference.com/w/c/types/limits>`_.
* It shall be greater than or equal than the number of statically
configured device drivers.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
DESCRIPTION:
The value of this configuration option defines the number of device drivers. The value of this configuration option defines the number of device drivers.
NOTES: .. rubric:: NOTES:
If the application will dynamically install device drivers, then the If the application will dynamically install device drivers, then the
configuration option value shall be larger than the number of statically configuration option value shall be larger than the number of statically
configured device drivers. configured device drivers.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be less than or equal to
`SIZE_MAX <https://en.cppreference.com/w/c/types/limits>`_.
* The value of the configuration option shall be greater than or equal than the
number of statically configured device drivers.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.

View File

@ -26,6 +26,10 @@ This section describes configuration options related to the event recording.
.. Generated from spec:/acfg/if/record-extensions-enabled .. Generated from spec:/acfg/if/record-extensions-enabled
.. raw:: latex
\clearpage
.. index:: CONFIGURE_RECORD_EXTENSIONS_ENABLED .. index:: CONFIGURE_RECORD_EXTENSIONS_ENABLED
.. _CONFIGURE_RECORD_EXTENSIONS_ENABLED: .. _CONFIGURE_RECORD_EXTENSIONS_ENABLED:
@ -33,17 +37,21 @@ This section describes configuration options related to the event recording.
CONFIGURE_RECORD_EXTENSIONS_ENABLED CONFIGURE_RECORD_EXTENSIONS_ENABLED
----------------------------------- -----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_RECORD_EXTENSIONS_ENABLED`` ``CONFIGURE_RECORD_EXTENSIONS_ENABLED``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case In case
* this configuration option is defined * this configuration option is defined
@ -52,12 +60,17 @@ DESCRIPTION:
then the event record extensions are enabled. then the event record extensions are enabled.
NOTES: .. rubric:: NOTES:
The record extensions capture thread create, start, restart, delete, switch, The record extensions capture thread create, start, restart, delete, switch,
begin, exitted and terminate events. begin, exitted and terminate events.
.. Generated from spec:/acfg/if/record-fatal-dump-base64 .. Generated from spec:/acfg/if/record-fatal-dump-base64
.. raw:: latex
\clearpage
.. index:: CONFIGURE_RECORD_FATAL_DUMP_BASE64 .. index:: CONFIGURE_RECORD_FATAL_DUMP_BASE64
.. _CONFIGURE_RECORD_FATAL_DUMP_BASE64: .. _CONFIGURE_RECORD_FATAL_DUMP_BASE64:
@ -65,17 +78,21 @@ NOTES:
CONFIGURE_RECORD_FATAL_DUMP_BASE64 CONFIGURE_RECORD_FATAL_DUMP_BASE64
---------------------------------- ----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_RECORD_FATAL_DUMP_BASE64`` ``CONFIGURE_RECORD_FATAL_DUMP_BASE64``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case In case
* this configuration option is defined * this configuration option is defined
@ -87,11 +104,16 @@ DESCRIPTION:
then the event records are dumped in Base64 encoding in a fatal error then the event records are dumped in Base64 encoding in a fatal error
extension (see :ref:`Terminate`). extension (see :ref:`Terminate`).
NOTES: .. rubric:: NOTES:
This extension can be used to produce crash dumps. This extension can be used to produce crash dumps.
.. Generated from spec:/acfg/if/record-fatal-dump-base64-zlib .. Generated from spec:/acfg/if/record-fatal-dump-base64-zlib
.. raw:: latex
\clearpage
.. index:: CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB .. index:: CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB
.. _CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB: .. _CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB:
@ -99,17 +121,21 @@ NOTES:
CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB
--------------------------------------- ---------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB`` ``CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case In case
* this configuration option is defined * this configuration option is defined
@ -119,12 +145,17 @@ DESCRIPTION:
then the event records are compressed by zlib and dumped in Base64 encoding then the event records are compressed by zlib and dumped in Base64 encoding
in a fatal error extension (see :ref:`Terminate`). in a fatal error extension (see :ref:`Terminate`).
NOTES: .. rubric:: NOTES:
The zlib compression needs about 512KiB of RAM. This extension can be used The zlib compression needs about 512KiB of RAM. This extension can be used
to produce crash dumps. to produce crash dumps.
.. Generated from spec:/acfg/if/record-per-processor-items .. Generated from spec:/acfg/if/record-per-processor-items
.. raw:: latex
\clearpage
.. index:: CONFIGURE_RECORD_PER_PROCESSOR_ITEMS .. index:: CONFIGURE_RECORD_PER_PROCESSOR_ITEMS
.. _CONFIGURE_RECORD_PER_PROCESSOR_ITEMS: .. _CONFIGURE_RECORD_PER_PROCESSOR_ITEMS:
@ -132,35 +163,40 @@ NOTES:
CONFIGURE_RECORD_PER_PROCESSOR_ITEMS CONFIGURE_RECORD_PER_PROCESSOR_ITEMS
------------------------------------ ------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_RECORD_PER_PROCESSOR_ITEMS`` ``CONFIGURE_RECORD_PER_PROCESSOR_ITEMS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to 16.
* It shall be less than or equal to `SIZE_MAX
<https://en.cppreference.com/w/c/types/limits>`_.
* It shall be a power of two.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
DESCRIPTION:
The value of this configuration option defines the event record item count The value of this configuration option defines the event record item count
per processor. per processor.
NOTES: .. rubric:: NOTES:
The event record buffers are statically allocated for each configured The event record buffers are statically allocated for each configured
processor (:ref:`CONFIGURE_MAXIMUM_PROCESSORS`). If the value of this processor (:ref:`CONFIGURE_MAXIMUM_PROCESSORS`). If the value of this
configuration option is zero, then nothing is allocated. configuration option is zero, then nothing is allocated.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to 16.
* The value of the configuration option shall be less than or equal to
`SIZE_MAX <https://en.cppreference.com/w/c/types/limits>`_.
* The value of the configuration option shall be a power of two.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -27,6 +27,10 @@ This section describes configuration options related to the idle tasks.
.. Generated from spec:/acfg/if/idle-task-body .. Generated from spec:/acfg/if/idle-task-body
.. raw:: latex
\clearpage
.. index:: CONFIGURE_IDLE_TASK_BODY .. index:: CONFIGURE_IDLE_TASK_BODY
.. _CONFIGURE_IDLE_TASK_BODY: .. _CONFIGURE_IDLE_TASK_BODY:
@ -34,24 +38,25 @@ This section describes configuration options related to the idle tasks.
CONFIGURE_IDLE_TASK_BODY CONFIGURE_IDLE_TASK_BODY
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_IDLE_TASK_BODY`` ``CONFIGURE_IDLE_TASK_BODY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
If :ref:`BSP_IDLE_TASK_BODY` is defined, then this will be the default value, If :ref:`BSP_IDLE_TASK_BODY` is defined, then this will be the default value,
otherwise the default value is ``_CPU_Thread_Idle_body``. otherwise the default value is ``_CPU_Thread_Idle_body``.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void *( *idle_body )( uintptr_t )``.
DESCRIPTION:
The value of this configuration option initializes the IDLE thread body. The value of this configuration option initializes the IDLE thread body.
NOTES: .. rubric:: NOTES:
IDLE threads shall not block. A blocking IDLE thread results in undefined IDLE threads shall not block. A blocking IDLE thread results in undefined
system behaviour because the scheduler assume that at least one ready thread system behaviour because the scheduler assume that at least one ready thread
exists. exists.
@ -59,8 +64,17 @@ NOTES:
IDLE threads can be used to initialize the application, see configuration IDLE threads can be used to initialize the application, see configuration
option :ref:`CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION`. option :ref:`CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION`.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void *( *idle_body )( uintptr_t )``.
.. Generated from spec:/acfg/if/idle-task-init-appl .. Generated from spec:/acfg/if/idle-task-init-appl
.. raw:: latex
\clearpage
.. index:: CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION .. index:: CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION
.. _CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION: .. _CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION:
@ -68,23 +82,28 @@ NOTES:
CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION
------------------------------------------- -------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION`` ``CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the user is assumed to If this configuration option is undefined, then the user is assumed to
provide one or more initialization tasks. provide one or more initialization tasks.
DESCRIPTION: .. rubric:: DESCRIPTION:
This configuration option is defined to indicate that the user has configured This configuration option is defined to indicate that the user has configured
**no** user initialization tasks or threads and that the user provided IDLE **no** user initialization tasks or threads and that the user provided IDLE
task will perform application initialization and then transform itself into task will perform application initialization and then transform itself into
an IDLE task. an IDLE task.
NOTES: .. rubric:: NOTES:
If you use this option be careful, the user IDLE task **cannot** block at all If you use this option be careful, the user IDLE task **cannot** block at all
during the initialization sequence. Further, once application during the initialization sequence. Further, once application
initialization is complete, it shall make itself preemptible and enter an idle initialization is complete, it shall make itself preemptible and enter an idle
@ -109,6 +128,10 @@ NOTES:
.. Generated from spec:/acfg/if/idle-task-stack-size .. Generated from spec:/acfg/if/idle-task-stack-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_IDLE_TASK_STACK_SIZE .. index:: CONFIGURE_IDLE_TASK_STACK_SIZE
.. _CONFIGURE_IDLE_TASK_STACK_SIZE: .. _CONFIGURE_IDLE_TASK_STACK_SIZE:
@ -116,30 +139,36 @@ NOTES:
CONFIGURE_IDLE_TASK_STACK_SIZE CONFIGURE_IDLE_TASK_STACK_SIZE
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_IDLE_TASK_STACK_SIZE`` ``CONFIGURE_IDLE_TASK_STACK_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is :ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`. The default value is :ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to a BSP-specific and
application-specific minimum value.
* It shall be small enough so that the IDLE task stack area calculation
carried out by ``<rtems/confdefs.h>`` does not overflow an integer of
type `size_t <https://en.cppreference.com/w/c/types/size_t>`_.
DESCRIPTION:
The value of this configuration option defines the task stack size for an The value of this configuration option defines the task stack size for an
IDLE task. IDLE task.
NOTES: .. rubric:: NOTES:
In SMP configurations, there is one IDLE task per configured processor, see In SMP configurations, there is one IDLE task per configured processor, see
:ref:`CONFIGURE_MAXIMUM_PROCESSORS`. :ref:`CONFIGURE_MAXIMUM_PROCESSORS`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to a
BSP-specific and application-specific minimum value.
* The value of the configuration option shall be small enough so that the IDLE
task stack area calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `size_t
<https://en.cppreference.com/w/c/types/size_t>`_.

View File

@ -32,6 +32,10 @@ SMP support.
.. Generated from spec:/acfg/if/mp-extra-server-stack .. Generated from spec:/acfg/if/mp-extra-server-stack
.. raw:: latex
\clearpage
.. index:: CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK .. index:: CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK
.. _CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK: .. _CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK:
@ -39,39 +43,49 @@ SMP support.
CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK
----------------------------------------- -----------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK`` ``CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
* It shall be small enough so that the MPCI receive server stack area
calculation carried out by ``<rtems/confdefs.h>`` does not overflow an
integer of type `size_t <https://en.cppreference.com/w/c/types/size_t>`_.
DESCRIPTION:
The value of this configuration option defines the number of bytes the The value of this configuration option defines the number of bytes the
applications wishes to add to the MPCI task stack on top of applications wishes to add to the MPCI task stack on top of
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`. :ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
NOTES: .. rubric:: NOTES:
This configuration option is only evaluated if This configuration option is only evaluated if
:ref:`CONFIGURE_MP_APPLICATION` is defined. :ref:`CONFIGURE_MP_APPLICATION` is defined.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
* The value of the configuration option shall be small enough so that the MPCI
receive server stack area calculation carried out by ``<rtems/confdefs.h>``
does not overflow an integer of type `size_t
<https://en.cppreference.com/w/c/types/size_t>`_.
.. Generated from spec:/acfg/if/mp-appl .. Generated from spec:/acfg/if/mp-appl
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MP_APPLICATION .. index:: CONFIGURE_MP_APPLICATION
.. _CONFIGURE_MP_APPLICATION: .. _CONFIGURE_MP_APPLICATION:
@ -79,22 +93,27 @@ NOTES:
CONFIGURE_MP_APPLICATION CONFIGURE_MP_APPLICATION
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MP_APPLICATION`` ``CONFIGURE_MP_APPLICATION``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the multiprocessing services If this configuration option is undefined, then the multiprocessing services
are not initialized. are not initialized.
DESCRIPTION: .. rubric:: DESCRIPTION:
This configuration option is defined to indicate that the application intends This configuration option is defined to indicate that the application intends
to be part of a multiprocessing configuration. Additional configuration to be part of a multiprocessing configuration. Additional configuration
options are assumed to be provided. options are assumed to be provided.
NOTES: .. rubric:: NOTES:
This configuration option shall be undefined if the multiprocessing support This configuration option shall be undefined if the multiprocessing support
is not enabled (e.g. RTEMS was built without the ``--enable-multiprocessing`` is not enabled (e.g. RTEMS was built without the ``--enable-multiprocessing``
build configuration option). Otherwise a compile time error in the build configuration option). Otherwise a compile time error in the
@ -102,6 +121,10 @@ NOTES:
.. Generated from spec:/acfg/if/mp-max-global-objects .. Generated from spec:/acfg/if/mp-max-global-objects
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS .. index:: CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
.. _CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS: .. _CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS:
@ -109,37 +132,46 @@ NOTES:
CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
----------------------------------- -----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS`` ``CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 32. The default value is 32.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the maximum number of The value of this configuration option defines the maximum number of
concurrently active global objects in a multiprocessor system. concurrently active global objects in a multiprocessor system.
NOTES: .. rubric:: NOTES:
This value corresponds to the total number of objects which can be created This value corresponds to the total number of objects which can be created
with the :c:macro:`RTEMS_GLOBAL` attribute. with the :c:macro:`RTEMS_GLOBAL` attribute.
This configuration option is only evaluated if This configuration option is only evaluated if
:ref:`CONFIGURE_MP_APPLICATION` is defined. :ref:`CONFIGURE_MP_APPLICATION` is defined.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/mp-max-nodes .. Generated from spec:/acfg/if/mp-max-nodes
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MP_MAXIMUM_NODES .. index:: CONFIGURE_MP_MAXIMUM_NODES
.. _CONFIGURE_MP_MAXIMUM_NODES: .. _CONFIGURE_MP_MAXIMUM_NODES:
@ -147,34 +179,43 @@ NOTES:
CONFIGURE_MP_MAXIMUM_NODES CONFIGURE_MP_MAXIMUM_NODES
-------------------------- --------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MP_MAXIMUM_NODES`` ``CONFIGURE_MP_MAXIMUM_NODES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 2. The default value is 2.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the maximum number of nodes in The value of this configuration option defines the maximum number of nodes in
a multiprocessor system. a multiprocessor system.
NOTES: .. rubric:: NOTES:
This configuration option is only evaluated if This configuration option is only evaluated if
:ref:`CONFIGURE_MP_APPLICATION` is defined. :ref:`CONFIGURE_MP_APPLICATION` is defined.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/mp-max-proxies .. Generated from spec:/acfg/if/mp-max-proxies
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MP_MAXIMUM_PROXIES .. index:: CONFIGURE_MP_MAXIMUM_PROXIES
.. _CONFIGURE_MP_MAXIMUM_PROXIES: .. _CONFIGURE_MP_MAXIMUM_PROXIES:
@ -182,30 +223,26 @@ NOTES:
CONFIGURE_MP_MAXIMUM_PROXIES CONFIGURE_MP_MAXIMUM_PROXIES
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MP_MAXIMUM_PROXIES`` ``CONFIGURE_MP_MAXIMUM_PROXIES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 32. The default value is 32.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the maximum number of The value of this configuration option defines the maximum number of
concurrently active thread/task proxies on this node in a multiprocessor concurrently active thread/task proxies on this node in a multiprocessor
system. system.
NOTES: .. rubric:: NOTES:
Since a proxy is used to represent a remote task/thread which is blocking 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 on this node. This configuration parameter reflects the maximum number of
remote tasks/threads which can be blocked on objects on this node, see remote tasks/threads which can be blocked on objects on this node, see
@ -214,8 +251,21 @@ NOTES:
This configuration option is only evaluated if This configuration option is only evaluated if
:ref:`CONFIGURE_MP_APPLICATION` is defined. :ref:`CONFIGURE_MP_APPLICATION` is defined.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/mp-mpci-table-pointer .. Generated from spec:/acfg/if/mp-mpci-table-pointer
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MP_MPCI_TABLE_POINTER .. index:: CONFIGURE_MP_MPCI_TABLE_POINTER
.. _CONFIGURE_MP_MPCI_TABLE_POINTER: .. _CONFIGURE_MP_MPCI_TABLE_POINTER:
@ -223,24 +273,25 @@ NOTES:
CONFIGURE_MP_MPCI_TABLE_POINTER CONFIGURE_MP_MPCI_TABLE_POINTER
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MP_MPCI_TABLE_POINTER`` ``CONFIGURE_MP_MPCI_TABLE_POINTER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``&MPCI_table``. The default value is ``&MPCI_table``.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be a pointer to
:c:type:`rtems_mpci_table`.
DESCRIPTION:
The value of this configuration option initializes the MPCI Configuration The value of this configuration option initializes the MPCI Configuration
Table. Table.
NOTES: .. rubric:: NOTES:
RTEMS provides a Shared Memory MPCI Device Driver which can be used on any RTEMS provides a Shared Memory MPCI Device Driver which can be used on any
Multiprocessor System assuming the BSP provides the proper set of Multiprocessor System assuming the BSP provides the proper set of
supporting methods. supporting methods.
@ -248,8 +299,17 @@ NOTES:
This configuration option is only evaluated if This configuration option is only evaluated if
:ref:`CONFIGURE_MP_APPLICATION` is defined. :ref:`CONFIGURE_MP_APPLICATION` is defined.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be a pointer to
:c:type:`rtems_mpci_table`.
.. Generated from spec:/acfg/if/mp-node-number .. Generated from spec:/acfg/if/mp-node-number
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MP_NODE_NUMBER .. index:: CONFIGURE_MP_NODE_NUMBER
.. _CONFIGURE_MP_NODE_NUMBER: .. _CONFIGURE_MP_NODE_NUMBER:
@ -257,29 +317,25 @@ NOTES:
CONFIGURE_MP_NODE_NUMBER CONFIGURE_MP_NODE_NUMBER
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MP_NODE_NUMBER`` ``CONFIGURE_MP_NODE_NUMBER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``NODE_NUMBER``. The default value is ``NODE_NUMBER``.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `UINT32_MAX
<https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the node number of this node The value of this configuration option defines the node number of this node
in a multiprocessor system. in a multiprocessor system.
NOTES: .. rubric:: NOTES:
In the RTEMS Multiprocessing Test Suite, the node number is derived from In the RTEMS Multiprocessing Test Suite, the node number is derived from
the Makefile variable ``NODE_NUMBER``. The same code is compiled with the the Makefile variable ``NODE_NUMBER``. The same code is compiled with the
``NODE_NUMBER`` set to different values. The test programs behave ``NODE_NUMBER`` set to different values. The test programs behave
@ -287,3 +343,12 @@ NOTES:
This configuration option is only evaluated if This configuration option is only evaluated if
:ref:`CONFIGURE_MP_APPLICATION` is defined. :ref:`CONFIGURE_MP_APPLICATION` is defined.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`UINT32_MAX <https://en.cppreference.com/w/c/types/integer>`_.

View File

@ -30,6 +30,10 @@ build configuration option.
.. Generated from spec:/acfg/if/max-posix-keys .. Generated from spec:/acfg/if/max-posix-keys
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_KEYS .. index:: CONFIGURE_MAXIMUM_POSIX_KEYS
.. _CONFIGURE_MAXIMUM_POSIX_KEYS: .. _CONFIGURE_MAXIMUM_POSIX_KEYS:
@ -37,42 +41,51 @@ build configuration option.
CONFIGURE_MAXIMUM_POSIX_KEYS CONFIGURE_MAXIMUM_POSIX_KEYS
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_KEYS`` ``CONFIGURE_MAXIMUM_POSIX_KEYS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of POSIX The value of this configuration option defines the maximum number of POSIX
API Keys that can be concurrently active. API Keys that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-posix-key-value-pairs .. Generated from spec:/acfg/if/max-posix-key-value-pairs
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS .. index:: CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS
.. _CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS: .. _CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS:
@ -80,48 +93,57 @@ NOTES:
CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS
--------------------------------------- ---------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS`` ``CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is The default value is
:ref:`CONFIGURE_MAXIMUM_POSIX_KEYS` * :ref:`CONFIGURE_MAXIMUM_POSIX_KEYS` *
( :ref:`CONFIGURE_MAXIMUM_TASKS` + ( :ref:`CONFIGURE_MAXIMUM_TASKS` +
:ref:`CONFIGURE_MAXIMUM_POSIX_THREADS` ). :ref:`CONFIGURE_MAXIMUM_POSIX_THREADS` ).
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of key The value of this configuration option defines the maximum number of key
value pairs used by POSIX API Keys that can be concurrently active. value pairs used by POSIX API Keys that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
A key value pair is created by :c:func:`pthread_setspecific` if the value A key value pair is created by :c:func:`pthread_setspecific` if the value
is not `NULL <https://en.cppreference.com/w/c/types/NULL>`_, otherwise it is deleted. is not `NULL <https://en.cppreference.com/w/c/types/NULL>`_, otherwise it is deleted.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-posix-message-queues .. Generated from spec:/acfg/if/max-posix-message-queues
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES .. index:: CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES
.. _CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES: .. _CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES:
@ -129,48 +151,58 @@ NOTES:
CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES
-------------------------------------- --------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES`` ``CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It shall be small enough so that the RTEMS Workspace size calculation
carried out by ``<rtems/confdefs.h>`` does not overflow an integer of
type `uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of POSIX The value of this configuration option defines the maximum number of POSIX
API Message Queues that can be concurrently active. API Message Queues that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. You have to account for the memory used to :ref:`ConfigUnlimitedObjects`. You have to account for the memory used to
store the messages of each message queue, see store the messages of each message queue, see
:ref:`CONFIGURE_MESSAGE_BUFFER_MEMORY`. :ref:`CONFIGURE_MESSAGE_BUFFER_MEMORY`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option shall be small enough so that the RTEMS
Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-posix-queued-signals .. Generated from spec:/acfg/if/max-posix-queued-signals
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS .. index:: CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS
.. _CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS: .. _CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS:
@ -178,45 +210,56 @@ NOTES:
CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS
-------------------------------------- --------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS`` ``CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It shall be small enough so that the RTEMS Workspace size calculation
carried out by ``<rtems/confdefs.h>`` does not overflow an integer of
type `uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
* It shall be zero if the POSIX API is not enabled (e.g. RTEMS was built
without the ``RTEMS_POSIX_API = True`` build configuration option).
Otherwise a compile time error in the configuration file will occur.
DESCRIPTION:
The value of this configuration option defines the maximum number of POSIX The value of this configuration option defines the maximum number of POSIX
API Queued Signals that can be concurrently active. API Queued Signals that can be concurrently active.
NOTES: .. rubric:: NOTES:
Unlimited objects are not available for queued signals. Unlimited objects are not available for queued signals.
Queued signals are only available if RTEMS was built with the Queued signals are only available if RTEMS was built with the
``--enable-posix`` build configuration option. ``--enable-posix`` build configuration option.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option shall be small enough so that the RTEMS
Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
* The value of the configuration option shall be zero if the POSIX API is not
enabled (e.g. RTEMS was built without the ``RTEMS_POSIX_API = True`` build
configuration option). Otherwise a compile time error in the configuration
file will occur.
.. Generated from spec:/acfg/if/max-posix-semaphores .. Generated from spec:/acfg/if/max-posix-semaphores
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_SEMAPHORES .. index:: CONFIGURE_MAXIMUM_POSIX_SEMAPHORES
.. _CONFIGURE_MAXIMUM_POSIX_SEMAPHORES: .. _CONFIGURE_MAXIMUM_POSIX_SEMAPHORES:
@ -224,41 +267,25 @@ NOTES:
CONFIGURE_MAXIMUM_POSIX_SEMAPHORES CONFIGURE_MAXIMUM_POSIX_SEMAPHORES
---------------------------------- ----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_SEMAPHORES`` ``CONFIGURE_MAXIMUM_POSIX_SEMAPHORES``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It shall be small enough so that the RTEMS Workspace size calculation
carried out by ``<rtems/confdefs.h>`` does not overflow an integer of
type `uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of POSIX The value of this configuration option defines the maximum number of POSIX
API Named Semaphores that can be concurrently active. API Named Semaphores that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
@ -267,8 +294,34 @@ NOTES:
configuration option since the storage space for these semaphores is configuration option since the storage space for these semaphores is
user-provided. user-provided.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option shall be small enough so that the RTEMS
Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-posix-shms .. Generated from spec:/acfg/if/max-posix-shms
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_SHMS .. index:: CONFIGURE_MAXIMUM_POSIX_SHMS
.. _CONFIGURE_MAXIMUM_POSIX_SHMS: .. _CONFIGURE_MAXIMUM_POSIX_SHMS:
@ -276,46 +329,56 @@ NOTES:
CONFIGURE_MAXIMUM_POSIX_SHMS CONFIGURE_MAXIMUM_POSIX_SHMS
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_SHMS`` ``CONFIGURE_MAXIMUM_POSIX_SHMS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It shall be small enough so that the RTEMS Workspace size calculation
carried out by ``<rtems/confdefs.h>`` does not overflow an integer of
type `uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
DESCRIPTION:
The value of this configuration option defines the maximum number of POSIX The value of this configuration option defines the maximum number of POSIX
API Shared Memory objects that can be concurrently active. API Shared Memory objects that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option shall be small enough so that the RTEMS
Workspace size calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
.. Generated from spec:/acfg/if/max-posix-threads .. Generated from spec:/acfg/if/max-posix-threads
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_THREADS .. index:: CONFIGURE_MAXIMUM_POSIX_THREADS
.. _CONFIGURE_MAXIMUM_POSIX_THREADS: .. _CONFIGURE_MAXIMUM_POSIX_THREADS:
@ -323,36 +386,25 @@ NOTES:
CONFIGURE_MAXIMUM_POSIX_THREADS CONFIGURE_MAXIMUM_POSIX_THREADS
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_THREADS`` ``CONFIGURE_MAXIMUM_POSIX_THREADS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It shall be small enough so that the task stack space calculation carried
out by ``<rtems/confdefs.h>`` does not overflow an integer of type
`uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the maximum number of POSIX The value of this configuration option defines the maximum number of POSIX
API Threads that can be concurrently active. API Threads that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
@ -366,8 +418,29 @@ NOTES:
All POSIX threads have floating point enabled. All POSIX threads have floating point enabled.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option shall be small enough so that the task
stack space calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/max-posix-timers .. Generated from spec:/acfg/if/max-posix-timers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_POSIX_TIMERS .. index:: CONFIGURE_MAXIMUM_POSIX_TIMERS
.. _CONFIGURE_MAXIMUM_POSIX_TIMERS: .. _CONFIGURE_MAXIMUM_POSIX_TIMERS:
@ -375,49 +448,59 @@ NOTES:
CONFIGURE_MAXIMUM_POSIX_TIMERS CONFIGURE_MAXIMUM_POSIX_TIMERS
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_POSIX_TIMERS`` ``CONFIGURE_MAXIMUM_POSIX_TIMERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 0. The default value is 0.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to 65535.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
* It may be defined through :c:func:`rtems_resource_unlimited` the enable
unlimited objects for the object class, if the value passed to
:c:func:`rtems_resource_unlimited` satisfies all other constraints of the
configuration option.
* It shall be zero if the POSIX API is not enabled (e.g. RTEMS was built
without the ``RTEMS_POSIX_API = True`` build configuration option).
Otherwise a compile time error in the configuration file will occur.
DESCRIPTION:
The value of this configuration option defines the maximum number of POSIX The value of this configuration option defines the maximum number of POSIX
API Timers that can be concurrently active. API Timers that can be concurrently active.
NOTES: .. rubric:: NOTES:
This object class can be configured in unlimited allocation mode, see This object class can be configured in unlimited allocation mode, see
:ref:`ConfigUnlimitedObjects`. :ref:`ConfigUnlimitedObjects`.
Timers are only available if RTEMS was built with the Timers are only available if RTEMS was built with the
``--enable-posix`` build configuration option. ``--enable-posix`` build configuration option.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to 65535.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
* The value of the configuration option may be defined through
:c:func:`rtems_resource_unlimited` the enable unlimited objects for the
object class, if the value passed to :c:func:`rtems_resource_unlimited`
satisfies all other constraints of the configuration option.
* The value of the configuration option shall be zero if the POSIX API is not
enabled (e.g. RTEMS was built without the ``RTEMS_POSIX_API = True`` build
configuration option). Otherwise a compile time error in the configuration
file will occur.
.. Generated from spec:/acfg/if/min-posix-thread-stack-size .. Generated from spec:/acfg/if/min-posix-thread-stack-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE .. index:: CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE
.. index:: minimum POSIX thread stack size .. index:: minimum POSIX thread stack size
@ -426,30 +509,32 @@ NOTES:
CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE
----------------------------------------- -----------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE`` ``CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is two times the value of The default value is two times the value of
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`. :ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be small enough so that the task stack space calculation carried
out by ``<rtems/confdefs.h>`` does not overflow an integer of type
`uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
* It shall be greater than or equal to a BSP-specific and
application-specific minimum value.
DESCRIPTION:
The value of this configuration option defines the minimum stack size in The value of this configuration option defines the minimum stack size in
bytes for every POSIX thread in the system. bytes for every POSIX thread in the system.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be small enough so that the task
stack space calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
* The value of the configuration option shall be greater than or equal to a
BSP-specific and application-specific minimum value.

View File

@ -28,6 +28,10 @@ initialization thread.
.. Generated from spec:/acfg/if/posix-init-thread-entry-point .. Generated from spec:/acfg/if/posix-init-thread-entry-point
.. raw:: latex
\clearpage
.. index:: CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT .. index:: CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT
.. _CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT: .. _CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT:
@ -35,29 +39,39 @@ initialization thread.
CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT
--------------------------------------- ---------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT`` ``CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``POSIX_Init``. The default value is ``POSIX_Init``.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void *( *entry_point )( void * )``.
DESCRIPTION:
The value of this configuration option initializes the entry point of the The value of this configuration option initializes the entry point of the
POSIX API initialization thread. POSIX API initialization thread.
NOTES: .. rubric:: NOTES:
The application shall provide the function referenced by this configuration The application shall provide the function referenced by this configuration
option. option.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void *( *entry_point )( void * )``.
.. Generated from spec:/acfg/if/posix-init-thread-stack-size .. Generated from spec:/acfg/if/posix-init-thread-stack-size
.. raw:: latex
\clearpage
.. index:: CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE .. index:: CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE
.. _CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE: .. _CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE:
@ -65,35 +79,41 @@ NOTES:
CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE
-------------------------------------- --------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE`` ``CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is :ref:`CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE`. The default value is :ref:`CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* It shall be small enough so that the task stack space calculation carried
out by ``<rtems/confdefs.h>`` does not overflow an integer of type
`uintptr_t <https://en.cppreference.com/w/c/types/integer>`_.
DESCRIPTION:
The value of this configuration option defines the thread stack size of the The value of this configuration option defines the thread stack size of the
POSIX API initialization thread. POSIX API initialization thread.
NOTES: .. rubric:: CONSTRAINTS:
None.
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to
:ref:`CONFIGURE_MINIMUM_TASK_STACK_SIZE`.
* The value of the configuration option shall be small enough so that the task
stack space calculation carried out by ``<rtems/confdefs.h>`` does not
overflow an integer of type `uintptr_t
<https://en.cppreference.com/w/c/types/integer>`_.
.. Generated from spec:/acfg/if/posix-init-thread-table .. Generated from spec:/acfg/if/posix-init-thread-table
.. raw:: latex
\clearpage
.. index:: CONFIGURE_POSIX_INIT_THREAD_TABLE .. index:: CONFIGURE_POSIX_INIT_THREAD_TABLE
.. _CONFIGURE_POSIX_INIT_THREAD_TABLE: .. _CONFIGURE_POSIX_INIT_THREAD_TABLE:
@ -101,21 +121,26 @@ NOTES:
CONFIGURE_POSIX_INIT_THREAD_TABLE CONFIGURE_POSIX_INIT_THREAD_TABLE
--------------------------------- ---------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_POSIX_INIT_THREAD_TABLE`` ``CONFIGURE_POSIX_INIT_THREAD_TABLE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then exactly one POSIX In case this configuration option is defined, then exactly one POSIX
initialization thread is configured. initialization thread is configured.
NOTES: .. rubric:: NOTES:
The application shall define exactly one of the following configuration The application shall define exactly one of the following configuration
options options

View File

@ -49,6 +49,10 @@ configuration option.
.. Generated from spec:/acfg/if/cbs-max-servers .. Generated from spec:/acfg/if/cbs-max-servers
.. raw:: latex
\clearpage
.. index:: CONFIGURE_CBS_MAXIMUM_SERVERS .. index:: CONFIGURE_CBS_MAXIMUM_SERVERS
.. _CONFIGURE_CBS_MAXIMUM_SERVERS: .. _CONFIGURE_CBS_MAXIMUM_SERVERS:
@ -56,38 +60,47 @@ configuration option.
CONFIGURE_CBS_MAXIMUM_SERVERS CONFIGURE_CBS_MAXIMUM_SERVERS
----------------------------- -----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_CBS_MAXIMUM_SERVERS`` ``CONFIGURE_CBS_MAXIMUM_SERVERS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is :ref:`CONFIGURE_MAXIMUM_TASKS`. The default value is :ref:`CONFIGURE_MAXIMUM_TASKS`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be greater than or equal to zero.
* It shall be less than or equal to `SIZE_MAX
<https://en.cppreference.com/w/c/types/limits>`_.
* It shall be less than or equal to a BSP-specific and application-specific
value which depends on the size of the memory available to the
application.
DESCRIPTION:
The value of this configuration option defines the maximum number Constant The value of this configuration option defines the maximum number Constant
Bandwidth Servers that can be concurrently active. Bandwidth Servers that can be concurrently active.
NOTES: .. rubric:: NOTES:
This configuration option is only evaluated if the configuration option This configuration option is only evaluated if the configuration option
:ref:`CONFIGURE_SCHEDULER_CBS` is defined. :ref:`CONFIGURE_SCHEDULER_CBS` is defined.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be greater than or equal to zero.
* The value of the configuration option shall be less than or equal to
`SIZE_MAX <https://en.cppreference.com/w/c/types/limits>`_.
* The value of the configuration option shall be less than or equal to a
BSP-specific and application-specific value which depends on the size of the
memory available to the application.
.. Generated from spec:/acfg/if/max-priority .. Generated from spec:/acfg/if/max-priority
.. raw:: latex
\clearpage
.. index:: CONFIGURE_MAXIMUM_PRIORITY .. index:: CONFIGURE_MAXIMUM_PRIORITY
.. index:: maximum priority .. index:: maximum priority
.. index:: number of priority levels .. index:: number of priority levels
@ -97,20 +110,20 @@ NOTES:
CONFIGURE_MAXIMUM_PRIORITY CONFIGURE_MAXIMUM_PRIORITY
-------------------------- --------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_MAXIMUM_PRIORITY`` ``CONFIGURE_MAXIMUM_PRIORITY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is 255. The default value is 255.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be equal to 3, 7, 31, 63, 127,
or 255.
DESCRIPTION:
For the following schedulers For the following schedulers
* :ref:`SchedulerPriority`, which is the default in uniprocessor * :ref:`SchedulerPriority`, which is the default in uniprocessor
@ -128,7 +141,8 @@ DESCRIPTION:
these schedulers. For all other schedulers provided by RTEMS, this these schedulers. For all other schedulers provided by RTEMS, this
configuration option has no effect. configuration option has no effect.
NOTES: .. rubric:: NOTES:
The numerically greatest priority is the logically lowest priority in the The numerically greatest priority is the logically lowest priority in the
system and will thus be used by the IDLE task. system and will thus be used by the IDLE task.
@ -146,8 +160,17 @@ NOTES:
The default value is 255, because RTEMS shall support 256 priority levels to The default value is 255, because RTEMS shall support 256 priority levels to
be compliant with various standards. These priorities range from 0 to 255. be compliant with various standards. These priorities range from 0 to 255.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be equal to 3, 7, 31, 63, 127, or
255.
.. Generated from spec:/acfg/if/scheduler-assignments .. Generated from spec:/acfg/if/scheduler-assignments
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_ASSIGNMENTS .. index:: CONFIGURE_SCHEDULER_ASSIGNMENTS
.. _CONFIGURE_SCHEDULER_ASSIGNMENTS: .. _CONFIGURE_SCHEDULER_ASSIGNMENTS:
@ -155,41 +178,51 @@ NOTES:
CONFIGURE_SCHEDULER_ASSIGNMENTS CONFIGURE_SCHEDULER_ASSIGNMENTS
------------------------------- -------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_ASSIGNMENTS`` ``CONFIGURE_SCHEDULER_ASSIGNMENTS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value of this configuration option is computed so that the The default value of this configuration option is computed so that the
default scheduler is assigned to each configured processor (up to 32). default scheduler is assigned to each configured processor (up to 32).
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall satisfy all of the following
constraints:
* It shall be a list of the following macros:
* ``RTEMS_SCHEDULER_ASSIGN( processor_index, attributes )``
* ``RTEMS_SCHEDULER_ASSIGN_NO_SCHEDULER``
* It shall be a list of exactly :ref:`CONFIGURE_MAXIMUM_PROCESSORS`
elements.
DESCRIPTION:
The value of this configuration option is used to initialize the initial The value of this configuration option is used to initialize the initial
scheduler to processor assignments. scheduler to processor assignments.
NOTES: .. rubric:: NOTES:
This configuration option is only evaluated in SMP configurations. This configuration option is only evaluated in SMP configurations.
This is an advanced configuration option, see This is an advanced configuration option, see
:ref:`ConfigurationSchedulersClustered`. :ref:`ConfigurationSchedulersClustered`.
.. rubric:: CONSTRAINTS:
The following constraints apply to this configuration option:
* The value of the configuration option shall be a list of the following
macros:
* ``RTEMS_SCHEDULER_ASSIGN( processor_index, attributes )``
* ``RTEMS_SCHEDULER_ASSIGN_NO_SCHEDULER``
* The value of the configuration option shall be a list of exactly
:ref:`CONFIGURE_MAXIMUM_PROCESSORS` elements.
.. Generated from spec:/acfg/if/scheduler-cbs .. Generated from spec:/acfg/if/scheduler-cbs
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_CBS .. index:: CONFIGURE_SCHEDULER_CBS
.. _CONFIGURE_SCHEDULER_CBS: .. _CONFIGURE_SCHEDULER_CBS:
@ -197,22 +230,27 @@ NOTES:
CONFIGURE_SCHEDULER_CBS CONFIGURE_SCHEDULER_CBS
----------------------- -----------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_CBS`` ``CONFIGURE_SCHEDULER_CBS``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerCBS` :ref:`SchedulerCBS`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -221,6 +259,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-edf .. Generated from spec:/acfg/if/scheduler-edf
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_EDF .. index:: CONFIGURE_SCHEDULER_EDF
.. _CONFIGURE_SCHEDULER_EDF: .. _CONFIGURE_SCHEDULER_EDF:
@ -228,22 +270,27 @@ NOTES:
CONFIGURE_SCHEDULER_EDF CONFIGURE_SCHEDULER_EDF
----------------------- -----------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_EDF`` ``CONFIGURE_SCHEDULER_EDF``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerEDF` :ref:`SchedulerEDF`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -252,6 +299,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-edf-smp .. Generated from spec:/acfg/if/scheduler-edf-smp
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_EDF_SMP .. index:: CONFIGURE_SCHEDULER_EDF_SMP
.. _CONFIGURE_SCHEDULER_EDF_SMP: .. _CONFIGURE_SCHEDULER_EDF_SMP:
@ -259,22 +310,27 @@ NOTES:
CONFIGURE_SCHEDULER_EDF_SMP CONFIGURE_SCHEDULER_EDF_SMP
--------------------------- ---------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_EDF_SMP`` ``CONFIGURE_SCHEDULER_EDF_SMP``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerSMPEDF` :ref:`SchedulerSMPEDF`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -290,6 +346,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-name .. Generated from spec:/acfg/if/scheduler-name
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_NAME .. index:: CONFIGURE_SCHEDULER_NAME
.. _CONFIGURE_SCHEDULER_NAME: .. _CONFIGURE_SCHEDULER_NAME:
@ -297,13 +357,16 @@ NOTES:
CONFIGURE_SCHEDULER_NAME CONFIGURE_SCHEDULER_NAME
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_NAME`` ``CONFIGURE_SCHEDULER_NAME``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an integer define. This configuration option is an integer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is The default value is
* ``"MEDF"`` for the :ref:`SchedulerSMPEDF`, * ``"MEDF"`` for the :ref:`SchedulerSMPEDF`,
@ -322,15 +385,13 @@ DEFAULT VALUE:
* ``"UPS "`` for the :ref:`SchedulerPrioritySimple`. * ``"UPS "`` for the :ref:`SchedulerPrioritySimple`.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be convertible to an integer
of type :c:type:`rtems_name`.
DESCRIPTION:
The value of this configuration option defines the name of the default The value of this configuration option defines the name of the default
scheduler. scheduler.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -338,8 +399,17 @@ NOTES:
Use :c:func:`rtems_build_name` to define the scheduler name. Use :c:func:`rtems_build_name` to define the scheduler name.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be convertible to an integer of
type :c:type:`rtems_name`.
.. Generated from spec:/acfg/if/scheduler-priority .. Generated from spec:/acfg/if/scheduler-priority
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_PRIORITY .. index:: CONFIGURE_SCHEDULER_PRIORITY
.. _CONFIGURE_SCHEDULER_PRIORITY: .. _CONFIGURE_SCHEDULER_PRIORITY:
@ -347,22 +417,27 @@ NOTES:
CONFIGURE_SCHEDULER_PRIORITY CONFIGURE_SCHEDULER_PRIORITY
---------------------------- ----------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_PRIORITY`` ``CONFIGURE_SCHEDULER_PRIORITY``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerPriority` :ref:`SchedulerPriority`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -378,6 +453,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-priority-affinity-smp .. Generated from spec:/acfg/if/scheduler-priority-affinity-smp
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP .. index:: CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP
.. _CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP: .. _CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP:
@ -385,22 +464,27 @@ NOTES:
CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP
----------------------------------------- -----------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP`` ``CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerSMPPriorityAffinity` :ref:`SchedulerSMPPriorityAffinity`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -415,6 +499,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-priority-smp .. Generated from spec:/acfg/if/scheduler-priority-smp
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_PRIORITY_SMP .. index:: CONFIGURE_SCHEDULER_PRIORITY_SMP
.. _CONFIGURE_SCHEDULER_PRIORITY_SMP: .. _CONFIGURE_SCHEDULER_PRIORITY_SMP:
@ -422,22 +510,27 @@ NOTES:
CONFIGURE_SCHEDULER_PRIORITY_SMP CONFIGURE_SCHEDULER_PRIORITY_SMP
-------------------------------- --------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_PRIORITY_SMP`` ``CONFIGURE_SCHEDULER_PRIORITY_SMP``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerSMPPriority` :ref:`SchedulerSMPPriority`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -452,6 +545,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-simple .. Generated from spec:/acfg/if/scheduler-simple
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_SIMPLE .. index:: CONFIGURE_SCHEDULER_SIMPLE
.. _CONFIGURE_SCHEDULER_SIMPLE: .. _CONFIGURE_SCHEDULER_SIMPLE:
@ -459,22 +556,27 @@ NOTES:
CONFIGURE_SCHEDULER_SIMPLE CONFIGURE_SCHEDULER_SIMPLE
-------------------------- --------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_SIMPLE`` ``CONFIGURE_SCHEDULER_SIMPLE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerPrioritySimple` :ref:`SchedulerPrioritySimple`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -483,6 +585,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-simple-smp .. Generated from spec:/acfg/if/scheduler-simple-smp
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_SIMPLE_SMP .. index:: CONFIGURE_SCHEDULER_SIMPLE_SMP
.. _CONFIGURE_SCHEDULER_SIMPLE_SMP: .. _CONFIGURE_SCHEDULER_SIMPLE_SMP:
@ -490,22 +596,27 @@ NOTES:
CONFIGURE_SCHEDULER_SIMPLE_SMP CONFIGURE_SCHEDULER_SIMPLE_SMP
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_SIMPLE_SMP`` ``CONFIGURE_SCHEDULER_SIMPLE_SMP``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the In case this configuration option is defined, then the
:ref:`SchedulerSMPPrioritySimple` :ref:`SchedulerSMPPrioritySimple`
algorithm is made available to the application. algorithm is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -517,6 +628,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-strong-apa .. Generated from spec:/acfg/if/scheduler-strong-apa
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_STRONG_APA .. index:: CONFIGURE_SCHEDULER_STRONG_APA
.. _CONFIGURE_SCHEDULER_STRONG_APA: .. _CONFIGURE_SCHEDULER_STRONG_APA:
@ -524,21 +639,26 @@ NOTES:
CONFIGURE_SCHEDULER_STRONG_APA CONFIGURE_SCHEDULER_STRONG_APA
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_STRONG_APA`` ``CONFIGURE_SCHEDULER_STRONG_APA``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the Strong APA algorithm In case this configuration option is defined, then the Strong APA algorithm
is made available to the application. is made available to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.
@ -549,6 +669,10 @@ NOTES:
.. Generated from spec:/acfg/if/scheduler-user .. Generated from spec:/acfg/if/scheduler-user
.. raw:: latex
\clearpage
.. index:: CONFIGURE_SCHEDULER_USER .. index:: CONFIGURE_SCHEDULER_USER
.. _CONFIGURE_SCHEDULER_USER: .. _CONFIGURE_SCHEDULER_USER:
@ -556,21 +680,26 @@ NOTES:
CONFIGURE_SCHEDULER_USER CONFIGURE_SCHEDULER_USER
------------------------ ------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_SCHEDULER_USER`` ``CONFIGURE_SCHEDULER_USER``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the user shall provide a In case this configuration option is defined, then the user shall provide a
scheduler algorithm to the application. scheduler algorithm to the application.
NOTES: .. rubric:: NOTES:
This scheduler configuration option is an advanced configuration option. This scheduler configuration option is an advanced configuration option.
Think twice before you use it. Think twice before you use it.

View File

@ -31,6 +31,10 @@ overflows are detected in hardware.
.. Generated from spec:/acfg/if/task-stack-allocator .. Generated from spec:/acfg/if/task-stack-allocator
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR .. index:: CONFIGURE_TASK_STACK_ALLOCATOR
.. index:: task stack allocator .. index:: task stack allocator
@ -39,25 +43,26 @@ overflows are detected in hardware.
CONFIGURE_TASK_STACK_ALLOCATOR CONFIGURE_TASK_STACK_ALLOCATOR
------------------------------ ------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR`` ``CONFIGURE_TASK_STACK_ALLOCATOR``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``_Workspace_Allocate``, which indicates that task The default value is ``_Workspace_Allocate``, which indicates that task
stacks will be allocated from the RTEMS Workspace. stacks will be allocated from the RTEMS Workspace.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void *( *allocate )( size_t )``.
DESCRIPTION:
The value of this configuration option initializes the stack allocator The value of this configuration option initializes the stack allocator
allocate handler. allocate handler.
NOTES: .. rubric:: NOTES:
A correctly configured system shall configure the following to be consistent: A correctly configured system shall configure the following to be consistent:
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT` * :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT`
@ -66,8 +71,17 @@ NOTES:
* :ref:`CONFIGURE_TASK_STACK_DEALLOCATOR` * :ref:`CONFIGURE_TASK_STACK_DEALLOCATOR`
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void *( *allocate )( size_t )``.
.. Generated from spec:/acfg/if/task-stack-no-workspace .. Generated from spec:/acfg/if/task-stack-no-workspace
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE .. index:: CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE
.. _CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE: .. _CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE:
@ -75,26 +89,35 @@ NOTES:
CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE
------------------------------------------------ ------------------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE`` ``CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is a boolean feature define. This configuration option is a boolean feature define.
DEFAULT CONFIGURATION: .. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not If this configuration option is undefined, then the described feature is not
enabled. enabled.
DESCRIPTION: .. rubric:: DESCRIPTION:
In case this configuration option is defined, then the system is informed In case this configuration option is defined, then the system is informed
that the task stack allocator does not use the RTEMS Workspace. that the task stack allocator does not use the RTEMS Workspace.
NOTES: .. rubric:: NOTES:
This configuration option may be used if a custom task stack allocator is This configuration option may be used if a custom task stack allocator is
configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`. configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`.
.. Generated from spec:/acfg/if/task-stack-allocator-for-idle .. Generated from spec:/acfg/if/task-stack-allocator-for-idle
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE .. index:: CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE
.. index:: task stack allocator for IDLE tasks .. index:: task stack allocator for IDLE tasks
@ -103,34 +126,44 @@ NOTES:
CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE
--------------------------------------- ---------------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE`` ``CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``_Stack_Allocator_allocate_for_idle_default``, which The default value is ``_Stack_Allocator_allocate_for_idle_default``, which
indicates that IDLE task stacks will be allocated from an area statically indicates that IDLE task stacks will be allocated from an area statically
allocated by ``<rtems/confdefs.h>``. allocated by ``<rtems/confdefs.h>``.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void *( *allocate )( uint32_t, size_t )``.
DESCRIPTION:
The value of this configuration option is the address for the stack allocator The value of this configuration option is the address for the stack allocator
allocate handler used to allocate the task stack of each allocate handler used to allocate the task stack of each
:term:`IDLE task`. :term:`IDLE task`.
NOTES: .. rubric:: NOTES:
This configuration option is independent of the other thread stack allocator This configuration option is independent of the other thread stack allocator
configuration options. It is assumed that any memory allocated for the stack configuration options. It is assumed that any memory allocated for the stack
of an :term:`IDLE task` will not be from the RTEMS Workspace or the of an :term:`IDLE task` will not be from the RTEMS Workspace or the
memory statically allocated by default. memory statically allocated by default.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void *( *allocate )( uint32_t, size_t )``.
.. Generated from spec:/acfg/if/task-stack-allocator-init .. Generated from spec:/acfg/if/task-stack-allocator-init
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR_INIT .. index:: CONFIGURE_TASK_STACK_ALLOCATOR_INIT
.. _CONFIGURE_TASK_STACK_ALLOCATOR_INIT: .. _CONFIGURE_TASK_STACK_ALLOCATOR_INIT:
@ -138,25 +171,25 @@ NOTES:
CONFIGURE_TASK_STACK_ALLOCATOR_INIT CONFIGURE_TASK_STACK_ALLOCATOR_INIT
----------------------------------- -----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR_INIT`` ``CONFIGURE_TASK_STACK_ALLOCATOR_INIT``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is `NULL <https://en.cppreference.com/w/c/types/NULL>`_. The default value is `NULL <https://en.cppreference.com/w/c/types/NULL>`_.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void ( *initialize )( size_t )`` or to `NULL
<https://en.cppreference.com/w/c/types/NULL>`_.
DESCRIPTION:
The value of this configuration option initializes the stack allocator The value of this configuration option initializes the stack allocator
initialization handler. initialization handler.
NOTES: .. rubric:: NOTES:
A correctly configured system shall configure the following to be consistent: A correctly configured system shall configure the following to be consistent:
* ``CONFIGURE_TASK_STACK_ALLOCATOR_INIT`` * ``CONFIGURE_TASK_STACK_ALLOCATOR_INIT``
@ -165,8 +198,18 @@ NOTES:
* :ref:`CONFIGURE_TASK_STACK_DEALLOCATOR` * :ref:`CONFIGURE_TASK_STACK_DEALLOCATOR`
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void ( *initialize )( size_t )`` or to `NULL
<https://en.cppreference.com/w/c/types/NULL>`_.
.. Generated from spec:/acfg/if/task-stack-deallocator .. Generated from spec:/acfg/if/task-stack-deallocator
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_DEALLOCATOR .. index:: CONFIGURE_TASK_STACK_DEALLOCATOR
.. index:: task stack deallocator .. index:: task stack deallocator
@ -175,25 +218,26 @@ NOTES:
CONFIGURE_TASK_STACK_DEALLOCATOR CONFIGURE_TASK_STACK_DEALLOCATOR
-------------------------------- --------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_TASK_STACK_DEALLOCATOR`` ``CONFIGURE_TASK_STACK_DEALLOCATOR``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is ``_Workspace_Free``, which indicates that task stacks The default value is ``_Workspace_Free``, which indicates that task stacks
will be allocated from the RTEMS Workspace. will be allocated from the RTEMS Workspace.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void ( *deallocate )( void * )``.
DESCRIPTION:
The value of this configuration option initializes the stack allocator The value of this configuration option initializes the stack allocator
deallocate handler. deallocate handler.
NOTES: .. rubric:: NOTES:
A correctly configured system shall configure the following to be consistent: A correctly configured system shall configure the following to be consistent:
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT` * :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT`
@ -202,8 +246,17 @@ NOTES:
* ``CONFIGURE_TASK_STACK_DEALLOCATOR`` * ``CONFIGURE_TASK_STACK_DEALLOCATOR``
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a valid function
pointer of the type ``void ( *deallocate )( void * )``.
.. Generated from spec:/acfg/if/task-stack-from-alloc .. Generated from spec:/acfg/if/task-stack-from-alloc
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_FROM_ALLOCATOR .. index:: CONFIGURE_TASK_STACK_FROM_ALLOCATOR
.. index:: task stack allocator .. index:: task stack allocator
@ -212,26 +265,31 @@ NOTES:
CONFIGURE_TASK_STACK_FROM_ALLOCATOR CONFIGURE_TASK_STACK_FROM_ALLOCATOR
----------------------------------- -----------------------------------
CONSTANT: .. rubric:: CONSTANT:
``CONFIGURE_TASK_STACK_FROM_ALLOCATOR`` ``CONFIGURE_TASK_STACK_FROM_ALLOCATOR``
OPTION TYPE: .. rubric:: OPTION TYPE:
This configuration option is an initializer define. This configuration option is an initializer define.
DEFAULT VALUE: .. rubric:: DEFAULT VALUE:
The default value is a macro which supports the system heap allocator. The default value is a macro which supports the system heap allocator.
VALUE CONSTRAINTS: .. rubric:: DESCRIPTION:
The value of this configuration option shall be defined to a macro which
accepts exactly one parameter and returns an unsigned integer. The
parameter will be an allocation size and the macro shall return this size
plus the overhead of the allocator to manage an allocation request for this
size.
DESCRIPTION:
The value of this configuration option is used to calculate the task stack The value of this configuration option is used to calculate the task stack
space size. space size.
NOTES: .. rubric:: NOTES:
This configuration option may be used if a custom task stack allocator is This configuration option may be used if a custom task stack allocator is
configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`. configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`.
.. rubric:: CONSTRAINTS:
The value of the configuration option shall be defined to a macro which accepts
exactly one parameter and returns an unsigned integer. The parameter will be
an allocation size and the macro shall return this size plus the overhead of
the allocator to manage an allocation request for this size.