summaryrefslogtreecommitdiffstats
path: root/c-user/config/index.rst
diff options
context:
space:
mode:
Diffstat (limited to 'c-user/config/index.rst')
-rw-r--r--c-user/config/index.rst505
1 files changed, 1 insertions, 504 deletions
diff --git a/c-user/config/index.rst b/c-user/config/index.rst
index f8cbf78..3fafa97 100644
--- a/c-user/config/index.rst
+++ b/c-user/config/index.rst
@@ -24,510 +24,7 @@ Configuring a System
idle-task
scheduler-general
scheduler-clustered
-
-Device Driver Configuration
-===========================
-
-This section defines the configuration parameters related to the automatic
-generation of a Device Driver Table. As ``<rtems/confdefs.h>`` only is aware
-of a small set of standard device drivers, the generated Device Driver Table is
-suitable for simple applications with no custom device drivers.
-
-Note that network device drivers are not configured in the Device Driver Table.
-
-.. index:: CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
-
-.. _CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER:
-
-CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
-------------------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER`` is defined when the
- application does *NOT* want the Clock Device Driver and is *NOT* using the
- Timer Driver. The inclusion or exclusion of the Clock Driver must be
- explicit in user applications.
-
-NOTES:
- This configuration parameter is intended to prevent the common user error
- of using the Hello World example as the baseline for an application and
- leaving out a clock tick source.
-
-.. index:: CONFIGURE_APPLICATION_EXTRA_DRIVERS
-
-.. _CONFIGURE_APPLICATION_EXTRA_DRIVERS:
-
-CONFIGURE_APPLICATION_EXTRA_DRIVERS
------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_EXTRA_DRIVERS``
-
-DATA TYPE:
- device driver entry structures
-
-RANGE:
- Undefined or set of device driver entry structures
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_EXTRA_DRIVERS`` is defined if the application has
- device drivers it needs to include in the Device Driver Table. This should
- be defined to the set of device driver entries that will be placed in the
- table at the *END* of the Device Driver Table.
-
-NOTES:
- None.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-----------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER`` is defined if the application
- wishes to include the Clock Device Driver.
-
-NOTES:
- This device driver is responsible for providing a regular interrupt which
- invokes a clock tick directive.
-
- If neither the Clock Driver not Benchmark Timer is enabled and the
- configuration parameter
- ``CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER`` is not defined, then a
- compile time error will occur.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-------------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER`` is defined if the
- application wishes to include the Console Device Driver.
-
-NOTES:
- This device driver is responsible for providing the :file:`/dev/console`
- device file. This device is used to initialize the standard input, output,
- and error file descriptors.
-
- BSPs should be constructed in a manner that allows ``printk()`` to work
- properly without the need for the console driver to be configured.
-
- The
-
- * ``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER``,
-
- * ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER``, and
-
- * ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER``
-
- configuration options are mutually exclusive.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER
------------------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER`` is defined if the
- application wishes to include the BSP's Frame Buffer Device Driver.
-
-NOTES:
- Most BSPs do not include support for a Frame Buffer Device Driver. This is
- because many boards do not include the required hardware.
-
- If this is defined and the BSP does not have this device driver, then the
- user will get a link time error for an undefined symbol.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER
-.. index:: /dev/null
-
-.. _CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER
----------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- This configuration variable is specified to enable ``/dev/null`` device driver.
-
-NOTES:
- This device driver is supported by all BSPs.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER
---------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER`` is defined if the application
- wishes to include the Real-Time Clock Driver.
-
-NOTES:
- Most BSPs do not include support for a real-time clock. This is because
- many boards do not include the required hardware.
-
- If this is defined and the BSP does not have this device driver, then the
- user will get a link time error for an undefined symbol.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER
--------------------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER`` is defined if the
- application wishes to include the Simple Console Device Driver.
-
-NOTES:
- This device driver is responsible for providing the :file:`/dev/console`
- device file. This device is used to initialize the standard input, output,
- and error file descriptors.
-
- This device driver reads via ``getchark()``.
-
- This device driver writes via ``rtems_putc()``.
-
- The Termios framework is not used. There is no support to change device
- settings, e.g. baud, stop bits, parity, etc.
-
- The
-
- * ``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER``,
-
- * ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER``, and
-
- * ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER``
-
- configuration options are mutually exclusive.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER
-------------------------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER`` is defined if
- the application wishes to include the Simple Task Console Device Driver.
-
-NOTES:
- This device driver is responsible for providing the :file:`/dev/console`
- device file. This device is used to initialize the standard input, output,
- and error file descriptors.
-
- This device driver reads via ``getchark()``.
-
- This device driver writes into a write buffer. The count of characters
- written into the write buffer is returned. It might be less than the
- requested count, in case the write buffer is full. The write is
- non-blocking and may be called from interrupt context. A dedicated task
- reads from the write buffer and outputs the characters via
- ``rtems_putc()``. This task runs with the least important priority. The
- write buffer size is 2047 characters and it is not configurable.
-
- Use ``fsync(STDOUT_FILENO)`` or ``fdatasync(STDOUT_FILENO)`` to drain the
- write buffer.
-
- The Termios framework is not used. There is no support to change device
- settings, e.g. baud, stop bits, parity, etc.
-
- The
-
- * ``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER``,
-
- * ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER``, and
-
- * ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER``
-
- configuration options are mutually exclusive.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER
----------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER`` is defined if the application
- wishes to include the Stub Device Driver.
-
-NOTES:
- This device driver simply provides entry points that return successful and
- is primarily a test fixture. It is supported by all BSPs.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
-----------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER`` is defined if the application
- wishes to include the Timer Driver. This device driver is used to
- benchmark execution times by the RTEMS Timing Test Suites.
-
-NOTES:
- If neither the Clock Driver not Benchmark Timer is enabled and the
- configuration parameter
- ``CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER`` is not defined, then a
- compile time error will occur.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER
-
-.. _CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER
--------------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER`` is defined if the
- application wishes to include the Watchdog Driver.
-
-NOTES:
- Most BSPs do not include support for a watchdog device driver. This is
- because many boards do not include the required hardware.
-
- If this is defined and the BSP does not have this device driver, then the
- user will get a link time error for an undefined symbol.
-
-.. index:: CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER
-.. index:: /dev/zero
-
-.. _CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER:
-
-CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER
----------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER``
-
-DATA TYPE:
- Boolean feature macro.
-
-RANGE:
- Defined or undefined.
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- This configuration variable is specified to enable ``/dev/zero`` device driver.
-
-NOTES:
- This device driver is supported by all BSPs.
-
-.. index:: CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS
-
-.. _CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS:
-
-CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS
-------------------------------------------
-
-CONSTANT:
- ``CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS``
-
-DATA TYPE:
- device driver entry structures
-
-RANGE:
- Undefined or set of device driver entry structures
-
-DEFAULT VALUE:
- This is not defined by default.
-
-DESCRIPTION:
- ``CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS`` is defined if the
- application has device drivers it needs to include in the Device Driver
- Table. This should be defined to the set of device driver entries that
- will be placed in the table at the *FRONT* of the Device Driver Table and
- initialized before any other drivers *EXCEPT* any BSP prerequisite drivers.
-
-NOTES:
- In some cases, it is used by System On Chip BSPs to support peripheral
- buses beyond those normally found on the System On Chip. For example, this
- is used by one RTEMS system which has implemented a SPARC/ERC32 based board
- with VMEBus. The VMEBus Controller initialization is performed by a device
- driver configured via this configuration parameter.
-
-.. index:: CONFIGURE_MAXIMUM_DRIVERS
-
-.. _CONFIGURE_MAXIMUM_DRIVERS:
-
-CONFIGURE_MAXIMUM_DRIVERS
--------------------------
-
-CONSTANT:
- ``CONFIGURE_MAXIMUM_DRIVERS``
-
-DATA TYPE:
- Unsigned integer (``uint32_t``).
-
-RANGE:
- Zero or positive.
-
-DEFAULT VALUE:
- This is computed by default, and is set to the number of device drivers
- configured using the ``CONFIGURE_APPLICATIONS_NEEDS_XXX_DRIVER``
- configuration parameters.
-
-DESCRIPTION:
- ``CONFIGURE_MAXIMUM_DRIVERS`` is defined as the number of device drivers
- per node.
-
-NOTES:
- If the application will dynamically install device drivers, then this
- configuration parameter must be larger than the number of statically
- configured device drivers. Drivers configured using the
- ``CONFIGURE_APPLICATIONS_NEEDS_XXX_DRIVER`` configuration parameters are
- statically installed.
+ device-driver
Multiprocessing Configuration
=============================