summaryrefslogtreecommitdiffstats
path: root/c-user/config/idle-task.rst
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-03-09 08:53:58 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-03-12 10:20:00 +0100
commit38032b0ccad4bde197a832518f9d64df33e97b1d (patch)
tree3fd8de500ffa80183672cfa5a2ff1704f492c323 /c-user/config/idle-task.rst
parentc-user: Move "BSP Related Configuration Options" (diff)
downloadrtems-docs-38032b0ccad4bde197a832518f9d64df33e97b1d.tar.bz2
c-user: Move "Idle Task Configuration"
Update #3836.
Diffstat (limited to 'c-user/config/idle-task.rst')
-rw-r--r--c-user/config/idle-task.rst96
1 files changed, 96 insertions, 0 deletions
diff --git a/c-user/config/idle-task.rst b/c-user/config/idle-task.rst
new file mode 100644
index 0000000..ef8b192
--- /dev/null
+++ b/c-user/config/idle-task.rst
@@ -0,0 +1,96 @@
+.. SPDX-License-Identifier: CC-BY-SA-4.0
+
+.. Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR)
+
+Idle Task Configuration
+=======================
+
+This section defines the IDLE task related configuration parameters supported
+by ``<rtems/confdefs.h>``.
+
+.. index:: CONFIGURE_IDLE_TASK_BODY
+
+.. _CONFIGURE_IDLE_TASK_BODY:
+
+CONFIGURE_IDLE_TASK_BODY
+------------------------
+
+CONSTANT:
+ ``CONFIGURE_IDLE_TASK_BODY``
+
+DATA TYPE:
+ Function pointer.
+
+RANGE:
+ Undefined or valid function pointer.
+
+DEFAULT VALUE:
+ This is not defined by default.
+
+DESCRIPTION:
+ ``CONFIGURE_IDLE_TASK_BODY`` is set to the function name corresponding to
+ the application specific IDLE thread body. If not specified, the BSP or
+ RTEMS default IDLE thread body will be used.
+
+NOTES:
+ None.
+
+.. index:: CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION
+
+.. _CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION:
+
+CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION
+-------------------------------------------
+
+CONSTANT:
+ ``CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION``
+
+DATA TYPE:
+ Boolean feature macro.
+
+RANGE:
+ Defined or undefined.
+
+DEFAULT VALUE:
+ This is not defined by default, the user is assumed to provide one or more
+ initialization tasks.
+
+DESCRIPTION:
+ ``CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION`` is set to indicate that the
+ user has configured *NO* user initialization tasks or threads and that the
+ user provided IDLE task will perform application initialization and then
+ transform itself into an IDLE task.
+
+NOTES:
+ If you use this option be careful, the user IDLE task *CANNOT* block at all
+ during the initialization sequence. Further, once application
+ initialization is complete, it must make itself preemptible and enter an
+ IDLE body loop.
+
+ The IDLE task must run at the lowest priority of all tasks in the system.
+
+.. index:: CONFIGURE_IDLE_TASK_STACK_SIZE
+
+.. _CONFIGURE_IDLE_TASK_STACK_SIZE:
+
+CONFIGURE_IDLE_TASK_STACK_SIZE
+------------------------------
+
+CONSTANT:
+ ``CONFIGURE_IDLE_TASK_STACK_SIZE``
+
+DATA TYPE:
+ Unsigned integer (``size_t``).
+
+RANGE:
+ Undefined or positive.
+
+DEFAULT VALUE:
+ The default value is RTEMS_MINIMUM_STACK_SIZE.
+
+DESCRIPTION:
+ ``CONFIGURE_IDLE_TASK_STACK_SIZE`` is set to the desired stack size for the
+ IDLE task.
+
+NOTES:
+ None.