summaryrefslogtreecommitdiffstats
path: root/c-user/config/classic-api.rst
diff options
context:
space:
mode:
Diffstat (limited to 'c-user/config/classic-api.rst')
-rw-r--r--c-user/config/classic-api.rst687
1 files changed, 430 insertions, 257 deletions
diff --git a/c-user/config/classic-api.rst b/c-user/config/classic-api.rst
index bd2fa00..212f666 100644
--- a/c-user/config/classic-api.rst
+++ b/c-user/config/classic-api.rst
@@ -1,13 +1,36 @@
.. SPDX-License-Identifier: CC-BY-SA-4.0
-.. Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
+.. Copyright (C) 2020, 2021 embedded brains GmbH & Co. KG
.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
+.. This file is part of the RTEMS quality process and was automatically
+.. generated. If you find something that needs to be fixed or
+.. worded better please post a report or patch to an RTEMS mailing list
+.. or raise a bug report:
+..
+.. https://www.rtems.org/bugs.html
+..
+.. For information on updating and regenerating please refer to the How-To
+.. section in the Software Requirements Engineering chapter of the
+.. RTEMS Software Engineering manual. The manual is provided as a part of
+.. a release. For development sources please refer to the online
+.. documentation at:
+..
+.. https://docs.rtems.org
+
+.. Generated from spec:/acfg/if/group-classic
+
Classic API Configuration
=========================
This section describes configuration options related to the Classic API.
+.. Generated from spec:/acfg/if/max-barriers
+
+.. raw:: latex
+
+ \clearpage
+
.. index:: CONFIGURE_MAXIMUM_BARRIERS
.. _CONFIGURE_MAXIMUM_BARRIERS:
@@ -15,39 +38,50 @@ This section describes configuration options related to the Classic API.
CONFIGURE_MAXIMUM_BARRIERS
--------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_BARRIERS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_BARRIERS``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
-OPTION TYPE:
- This configuration option is an integer define.
+.. rubric:: DEFAULT VALUE:
-DEFAULT VALUE:
- The default value is 0.
+The default value is 0.
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+.. rubric:: DESCRIPTION:
- * It shall be greater than or equal to 0.
+The value of this configuration option defines the maximum number of Classic
+API Barriers that can be concurrently active.
- * It shall be less than or equal to 65535.
+.. rubric:: NOTES:
- * 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.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+.. rubric:: CONSTRAINTS:
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Barriers that can be concurrently active.
+The following constraints apply to this configuration option:
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+* 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
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
+
+.. Generated from spec:/acfg/if/max-message-queues
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_MESSAGE_QUEUES
@@ -56,41 +90,52 @@ NOTES:
CONFIGURE_MAXIMUM_MESSAGE_QUEUES
--------------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_MESSAGE_QUEUES``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_MESSAGE_QUEUES``
-OPTION TYPE:
- This configuration option is an integer define.
+.. rubric:: OPTION TYPE:
-DEFAULT VALUE:
- The default value is 0.
+This configuration option is an integer define.
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+.. rubric:: DEFAULT VALUE:
- * It shall be greater than or equal to 0.
+The default value is 0.
- * It shall be less than or equal to 65535.
+.. rubric:: DESCRIPTION:
- * 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.
+The value of this configuration option defines the maximum number of Classic
+API Message Queues that can be concurrently active.
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+.. rubric:: NOTES:
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Message Queues that can be concurrently active.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`. You have to account for the memory used to
+store the messages of each message queue, see
+:ref:`CONFIGURE_MESSAGE_BUFFER_MEMORY`.
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`. You have to account for the memory used to
- store the messages of each message queue, see
- :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
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
+
+.. Generated from spec:/acfg/if/max-partitions
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_PARTITIONS
@@ -99,39 +144,50 @@ NOTES:
CONFIGURE_MAXIMUM_PARTITIONS
----------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_PARTITIONS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_PARTITIONS``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
+
+.. rubric:: DEFAULT VALUE:
+
+The default value is 0.
+
+.. rubric:: DESCRIPTION:
-OPTION TYPE:
- This configuration option is an integer define.
+The value of this configuration option defines the maximum number of Classic
+API Partitions that can be concurrently active.
-DEFAULT VALUE:
- The default value is 0.
+.. rubric:: NOTES:
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
- * It shall be greater than or equal to 0.
+.. rubric:: CONSTRAINTS:
- * It shall be less than or equal to 65535.
+The following constraints apply to this configuration option:
- * 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.
+* The value of the configuration option shall be greater than or equal to zero.
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+* The value of the configuration option shall be less than or equal to 65535.
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Partitions that can be concurrently active.
+* 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.
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+* The value of the configuration option may be defined through
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
+
+.. Generated from spec:/acfg/if/max-periods
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_PERIODS
@@ -140,39 +196,50 @@ NOTES:
CONFIGURE_MAXIMUM_PERIODS
-------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_PERIODS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_PERIODS``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
+
+.. rubric:: DEFAULT VALUE:
-OPTION TYPE:
- This configuration option is an integer define.
+The default value is 0.
-DEFAULT VALUE:
- The default value is 0.
+.. rubric:: DESCRIPTION:
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+The value of this configuration option defines the maximum number of Classic
+API Periods that can be concurrently active.
- * It shall be greater than or equal to 0.
+.. rubric:: NOTES:
- * It shall be less than or equal to 65535.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
- * 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.
+.. rubric:: CONSTRAINTS:
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+The following constraints apply to this configuration option:
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Periods that can be concurrently active.
+* The value of the configuration option shall be greater than or equal to zero.
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+* 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
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
+
+.. Generated from spec:/acfg/if/max-ports
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_PORTS
@@ -181,39 +248,50 @@ NOTES:
CONFIGURE_MAXIMUM_PORTS
-----------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_PORTS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_PORTS``
+
+.. rubric:: OPTION TYPE:
-OPTION TYPE:
- This configuration option is an integer define.
+This configuration option is an integer define.
-DEFAULT VALUE:
- The default value is 0.
+.. rubric:: DEFAULT VALUE:
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+The default value is 0.
- * It shall be greater than or equal to 0.
+.. rubric:: DESCRIPTION:
- * It shall be less than or equal to 65535.
+The value of this configuration option defines the maximum number of Classic
+API Ports that can be concurrently active.
- * 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.
+.. rubric:: NOTES:
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Ports that can be concurrently active.
+.. rubric:: CONSTRAINTS:
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+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
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
+
+.. Generated from spec:/acfg/if/max-regions
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_REGIONS
@@ -222,39 +300,50 @@ NOTES:
CONFIGURE_MAXIMUM_REGIONS
-------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_REGIONS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_REGIONS``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
+
+.. rubric:: DEFAULT VALUE:
+
+The default value is 0.
+
+.. rubric:: DESCRIPTION:
+
+The value of this configuration option defines the maximum number of Classic
+API Regions that can be concurrently active.
-OPTION TYPE:
- This configuration option is an integer define.
+.. rubric:: NOTES:
-DEFAULT VALUE:
- The default value is 0.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+.. rubric:: CONSTRAINTS:
- * It shall be greater than or equal to 0.
+The following constraints apply to this configuration option:
- * It shall be less than or equal to 65535.
+* The value of the configuration option 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.
+* The value of the configuration option shall be less than or equal to 65535.
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+* 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.
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Regions that can be concurrently active.
+* The value of the configuration option may be defined through
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+.. Generated from spec:/acfg/if/max-semaphores
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_SEMAPHORES
@@ -263,43 +352,54 @@ NOTES:
CONFIGURE_MAXIMUM_SEMAPHORES
----------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_SEMAPHORES``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_SEMAPHORES``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
+
+.. rubric:: DEFAULT VALUE:
+
+The default value is 0.
-OPTION TYPE:
- This configuration option is an integer define.
+.. rubric:: DESCRIPTION:
-DEFAULT VALUE:
- The default value is 0.
+The value of this configuration option defines the maximum number of Classic
+API Semaphore that can be concurrently active.
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+.. rubric:: NOTES:
- * It shall be greater than or equal to 0.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
- * It shall be less than or equal to 65535.
+In SMP configurations, the size of a Semaphore Control Block depends on the
+scheduler count (see :ref:`ConfigurationSchedulerTable`). The semaphores
+using the :ref:`MrsP` need a ceiling priority per scheduler.
- * 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.
+.. rubric:: CONSTRAINTS:
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+The following constraints apply to this configuration option:
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Semaphore that can be concurrently active.
+* The value of the configuration option shall be greater than or equal to zero.
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+* The value of the configuration option shall be less than or equal to 65535.
- In SMP configurations, the size of a Semaphore Control Block depends on the
- scheduler count (see :ref:`ConfigurationSchedulerTable`). The semaphores
- using the :ref:`MrsP` need a ceiling priority per scheduler.
+* 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
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
+
+.. Generated from spec:/acfg/if/max-tasks
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_TASKS
@@ -308,59 +408,68 @@ NOTES:
CONFIGURE_MAXIMUM_TASKS
-----------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_TASKS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_TASKS``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
-OPTION TYPE:
- This configuration option is an integer define.
+.. rubric:: DEFAULT VALUE:
-DEFAULT VALUE:
- The default value is 0.
+The default value is 0.
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+.. rubric:: DESCRIPTION:
- * It shall be greater than or equal to 0.
+The value of this configuration option defines the maximum number of Classic
+API Tasks that can be concurrently active.
- * It shall be less than or equal to 65535.
+.. rubric:: NOTES:
- * 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.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
- * 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``.
+The calculations for the required memory in the RTEMS Workspace for tasks
+assume that each task has a minimum stack size and has floating point
+support enabled. The configuration option :ref:`CONFIGURE_EXTRA_TASK_STACKS` is used
+to specify task stack requirements *above* the minimum size required.
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+The maximum number of POSIX threads is specified by
+:ref:`CONFIGURE_MAXIMUM_POSIX_THREADS`.
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Tasks that can be concurrently active.
+A future enhancement to ``<rtems/confdefs.h>`` could be to eliminate the
+assumption that all tasks have floating point enabled. This would require
+the addition of a new configuration parameter to specify the number of
+tasks which enable floating point support.
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+.. rubric:: CONSTRAINTS:
- The calculations for the required memory in the RTEMS Workspace for tasks
- assume that each task has a minimum stack size and has floating point
- support enabled. The configuration parameter
- ``CONFIGURE_EXTRA_TASK_STACKS`` is used to specify task stack requirements
- *ABOVE* the minimum size required. See :ref:`Reserve Task/Thread Stack
- Memory Above Minimum` for more information about
- ``CONFIGURE_EXTRA_TASK_STACKS``.
+The following constraints apply to this configuration option:
- The maximum number of POSIX threads is specified by
- :ref:`CONFIGURE_MAXIMUM_POSIX_THREADS`.
+* The value of the configuration option shall be greater than or equal to zero.
- A future enhancement to ``<rtems/confdefs.h>`` could be to eliminate the
- assumption that all tasks have floating point enabled. This would require
- the addition of a new configuration parameter to specify the number of
- tasks which enable floating point support.
+* 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
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
+
+.. Generated from spec:/acfg/if/max-timers
+
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_TIMERS
@@ -369,39 +478,50 @@ NOTES:
CONFIGURE_MAXIMUM_TIMERS
------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_TIMERS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_TIMERS``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
+
+.. rubric:: DEFAULT VALUE:
+
+The default value is 0.
+
+.. rubric:: DESCRIPTION:
+
+The value of this configuration option defines the maximum number of Classic
+API Timers that can be concurrently active.
+
+.. rubric:: NOTES:
-OPTION TYPE:
- This configuration option is an integer define.
+This object class can be configured in unlimited allocation mode, see
+:ref:`ConfigUnlimitedObjects`.
-DEFAULT VALUE:
- The default value is 0.
+.. rubric:: CONSTRAINTS:
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+The following constraints apply to this configuration option:
- * It shall be greater than or equal to 0.
+* The value of the configuration option shall be greater than or equal to zero.
- * It shall be less than or equal to 65535.
+* The value of the configuration option 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.
+* 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.
- * It may be defined through
- :c:func:`rtems_resource_unlimited` the enable unlimited objects for this
- object class, if the value passed to :c:func:`rtems_resource_unlimited`
- satisfies all other constraints of this configuration option.
+* The value of the configuration option may be defined through
+ :ref:`InterfaceRtemsResourceUnlimited` the enable unlimited objects for the
+ object class, if the value passed to :ref:`InterfaceRtemsResourceUnlimited`
+ satisfies all other constraints of the configuration option.
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API Timers that can be concurrently active.
+.. Generated from spec:/acfg/if/max-user-extensions
-NOTES:
- This object class can be configured in unlimited allocation mode, see
- :ref:`ConfigUnlimitedObjects`.
+.. raw:: latex
+
+ \clearpage
.. index:: CONFIGURE_MAXIMUM_USER_EXTENSIONS
@@ -410,30 +530,83 @@ NOTES:
CONFIGURE_MAXIMUM_USER_EXTENSIONS
---------------------------------
-CONSTANT:
- ``CONFIGURE_MAXIMUM_USER_EXTENSIONS``
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MAXIMUM_USER_EXTENSIONS``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
+
+.. rubric:: DEFAULT VALUE:
+
+The default value is 0.
+
+.. rubric:: DESCRIPTION:
+
+The value of this configuration option defines the maximum number of Classic
+API User Extensions that can be concurrently active.
+
+.. rubric:: NOTES:
+
+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
+
+.. raw:: latex
+
+ \clearpage
+
+.. index:: CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE
+
+.. _CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE:
+
+CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE
+--------------------------------------------------
+
+.. rubric:: CONSTANT:
+
+``CONFIGURE_MINIMUM_TASKS_WITH_USER_PROVIDED_STORAGE``
+
+.. rubric:: OPTION TYPE:
+
+This configuration option is an integer define.
+
+.. rubric:: DEFAULT VALUE:
+
+The default value is 0.
-OPTION TYPE:
- This configuration option is an integer define.
+.. rubric:: DESCRIPTION:
-DEFAULT VALUE:
- The default value is 0.
+The value of this configuration option defines the minimum count of Classic
+API Tasks which are constructed by :ref:`InterfaceRtemsTaskConstruct`.
-VALUE CONSTRAINTS:
- The value of this configuration option shall satisfy all of the following
- constraints:
+.. rubric:: NOTES:
- * It shall be greater than or equal to 0.
+By default, the calculation for the required memory in the RTEMS Workspace
+for tasks assumes that all Classic API Tasks are created by
+:ref:`InterfaceRtemsTaskCreate`. This configuration option can be used to
+reduce the required memory for the system-provided task storage areas since
+tasks constructed by :ref:`InterfaceRtemsTaskConstruct` use a user-provided
+task storage area.
- * It shall be less than or equal to 65535.
+.. rubric:: CONSTRAINTS:
- * 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.
+The following constraints apply to this configuration option:
-DESCRIPTION:
- The value of this configuration option defines the maximum number of Classic
- API User Extensions that can be concurrently active.
+* The value of the configuration option shall be greater than or equal to zero.
-NOTES:
- This object class cannot be configured in unlimited allocation mode.
+* The value of the configuration option shall be less than or equal to
+ :ref:`CONFIGURE_MAXIMUM_TASKS`.