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

@@ -31,6 +31,10 @@ overflows are detected in hardware.
.. Generated from spec:/acfg/if/task-stack-allocator
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR
.. index:: task stack allocator
@@ -39,35 +43,45 @@ overflows are detected in hardware.
CONFIGURE_TASK_STACK_ALLOCATOR
------------------------------
CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR``
.. rubric:: CONSTANT:
OPTION TYPE:
This configuration option is an initializer define.
``CONFIGURE_TASK_STACK_ALLOCATOR``
DEFAULT VALUE:
The default value is ``_Workspace_Allocate``, which indicates that task
stacks will be allocated from the RTEMS Workspace.
.. rubric:: OPTION TYPE:
VALUE CONSTRAINTS:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void *( *allocate )( size_t )``.
This configuration option is an initializer define.
DESCRIPTION:
The value of this configuration option initializes the stack allocator
allocate handler.
.. rubric:: DEFAULT VALUE:
NOTES:
A correctly configured system shall configure the following to be consistent:
The default value is ``_Workspace_Allocate``, which indicates that task
stacks will be allocated from the RTEMS Workspace.
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT`
.. rubric:: DESCRIPTION:
* ``CONFIGURE_TASK_STACK_ALLOCATOR``
The value of this configuration option initializes the stack allocator
allocate handler.
* :ref:`CONFIGURE_TASK_STACK_DEALLOCATOR`
.. rubric:: NOTES:
A correctly configured system shall configure the following to be consistent:
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT`
* ``CONFIGURE_TASK_STACK_ALLOCATOR``
* :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
.. raw:: latex
\clearpage
.. index:: 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
------------------------------------------------
CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE``
.. rubric:: CONSTANT:
OPTION TYPE:
This configuration option is a boolean feature define.
``CONFIGURE_TASK_STACK_ALLOCATOR_AVOIDS_WORK_SPACE``
DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not
enabled.
.. rubric:: OPTION TYPE:
DESCRIPTION:
In case this configuration option is defined, then the system is informed
that the task stack allocator does not use the RTEMS Workspace.
This configuration option is a boolean feature define.
NOTES:
This configuration option may be used if a custom task stack allocator is
configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`.
.. rubric:: DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not
enabled.
.. rubric:: DESCRIPTION:
In case this configuration option is defined, then the system is informed
that the task stack allocator does not use the RTEMS Workspace.
.. rubric:: NOTES:
This configuration option may be used if a custom task stack allocator is
configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`.
.. Generated from spec:/acfg/if/task-stack-allocator-for-idle
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE
.. index:: task stack allocator for IDLE tasks
@@ -103,34 +126,44 @@ NOTES:
CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE
---------------------------------------
CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE``
.. rubric:: CONSTANT:
OPTION TYPE:
This configuration option is an initializer define.
``CONFIGURE_TASK_STACK_ALLOCATOR_FOR_IDLE``
DEFAULT VALUE:
The default value is ``_Stack_Allocator_allocate_for_idle_default``, which
indicates that IDLE task stacks will be allocated from an area statically
allocated by ``<rtems/confdefs.h>``.
.. rubric:: OPTION TYPE:
VALUE CONSTRAINTS:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void *( *allocate )( uint32_t, size_t )``.
This configuration option is an initializer define.
DESCRIPTION:
The value of this configuration option is the address for the stack allocator
allocate handler used to allocate the task stack of each
:term:`IDLE task`.
.. rubric:: DEFAULT VALUE:
NOTES:
This configuration option is independent of the other thread stack allocator
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
memory statically allocated by default.
The default value is ``_Stack_Allocator_allocate_for_idle_default``, which
indicates that IDLE task stacks will be allocated from an area statically
allocated by ``<rtems/confdefs.h>``.
.. rubric:: DESCRIPTION:
The value of this configuration option is the address for the stack allocator
allocate handler used to allocate the task stack of each
:term:`IDLE task`.
.. rubric:: NOTES:
This configuration option is independent of the other thread stack allocator
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
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
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_ALLOCATOR_INIT
.. _CONFIGURE_TASK_STACK_ALLOCATOR_INIT:
@@ -138,35 +171,45 @@ NOTES:
CONFIGURE_TASK_STACK_ALLOCATOR_INIT
-----------------------------------
CONSTANT:
``CONFIGURE_TASK_STACK_ALLOCATOR_INIT``
.. rubric:: CONSTANT:
OPTION TYPE:
This configuration option is an initializer define.
``CONFIGURE_TASK_STACK_ALLOCATOR_INIT``
DEFAULT VALUE:
The default value is `NULL <https://en.cppreference.com/w/c/types/NULL>`_.
.. rubric:: OPTION TYPE:
VALUE CONSTRAINTS:
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>`_.
This configuration option is an initializer define.
DESCRIPTION:
The value of this configuration option initializes the stack allocator
initialization handler.
.. rubric:: DEFAULT VALUE:
NOTES:
A correctly configured system shall configure the following to be consistent:
The default value is `NULL <https://en.cppreference.com/w/c/types/NULL>`_.
* ``CONFIGURE_TASK_STACK_ALLOCATOR_INIT``
.. rubric:: DESCRIPTION:
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`
The value of this configuration option initializes the stack allocator
initialization handler.
* :ref:`CONFIGURE_TASK_STACK_DEALLOCATOR`
.. rubric:: NOTES:
A correctly configured system shall configure the following to be consistent:
* ``CONFIGURE_TASK_STACK_ALLOCATOR_INIT``
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`
* :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
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_DEALLOCATOR
.. index:: task stack deallocator
@@ -175,35 +218,45 @@ NOTES:
CONFIGURE_TASK_STACK_DEALLOCATOR
--------------------------------
CONSTANT:
``CONFIGURE_TASK_STACK_DEALLOCATOR``
.. rubric:: CONSTANT:
OPTION TYPE:
This configuration option is an initializer define.
``CONFIGURE_TASK_STACK_DEALLOCATOR``
DEFAULT VALUE:
The default value is ``_Workspace_Free``, which indicates that task stacks
will be allocated from the RTEMS Workspace.
.. rubric:: OPTION TYPE:
VALUE CONSTRAINTS:
The value of this configuration option shall be defined to a valid function
pointer of the type ``void ( *deallocate )( void * )``.
This configuration option is an initializer define.
DESCRIPTION:
The value of this configuration option initializes the stack allocator
deallocate handler.
.. rubric:: DEFAULT VALUE:
NOTES:
A correctly configured system shall configure the following to be consistent:
The default value is ``_Workspace_Free``, which indicates that task stacks
will be allocated from the RTEMS Workspace.
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT`
.. rubric:: DESCRIPTION:
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`
The value of this configuration option initializes the stack allocator
deallocate handler.
* ``CONFIGURE_TASK_STACK_DEALLOCATOR``
.. rubric:: NOTES:
A correctly configured system shall configure the following to be consistent:
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR_INIT`
* :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`
* ``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
.. raw:: latex
\clearpage
.. index:: CONFIGURE_TASK_STACK_FROM_ALLOCATOR
.. index:: task stack allocator
@@ -212,26 +265,31 @@ NOTES:
CONFIGURE_TASK_STACK_FROM_ALLOCATOR
-----------------------------------
CONSTANT:
``CONFIGURE_TASK_STACK_FROM_ALLOCATOR``
.. rubric:: CONSTANT:
OPTION TYPE:
This configuration option is an initializer define.
``CONFIGURE_TASK_STACK_FROM_ALLOCATOR``
DEFAULT VALUE:
The default value is a macro which supports the system heap allocator.
.. rubric:: OPTION TYPE:
VALUE CONSTRAINTS:
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.
This configuration option is an initializer define.
DESCRIPTION:
The value of this configuration option is used to calculate the task stack
space size.
.. rubric:: DEFAULT VALUE:
NOTES:
This configuration option may be used if a custom task stack allocator is
configured, see :ref:`CONFIGURE_TASK_STACK_ALLOCATOR`.
The default value is a macro which supports the system heap allocator.
.. rubric:: DESCRIPTION:
The value of this configuration option is used to calculate the task stack
space size.
.. rubric:: NOTES:
This configuration option may be used if a custom task stack allocator is
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.