[PATCH] CONFIGURE_*_SIMPLE_TASK_CONSOLE_DRIVER
Chris Johns
chrisj at rtems.org
Tue Mar 6 07:15:10 UTC 2018
Hi,
Looks good.
Should the documentation make mention of why would you select one of these
console drivers?
Chris
On 6/3/18 6:08 pm, Sebastian Huber wrote:
> Update #3320.
> ---
> c-user/configuring_a_system.rst | 97 +++++++++++++++++++++++++++++++++++------
> 1 file changed, 84 insertions(+), 13 deletions(-)
>
> diff --git a/c-user/configuring_a_system.rst b/c-user/configuring_a_system.rst
> index 52d667a..6b7f487 100644
> --- a/c-user/configuring_a_system.rst
> +++ b/c-user/configuring_a_system.rst
> @@ -3854,15 +3854,22 @@ DESCRIPTION:
> application wishes to include the Console Device Driver.
>
> NOTES:
> - This device driver is responsible for providing standard input and output
> - using */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,
> + 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`` configuration option is
> - mutually exclusive with the
> - ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER`` configuration option.
> + 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_CONSOLE_DRIVER
>
> @@ -3888,16 +3895,80 @@ DESCRIPTION:
> application wishes to include the Simple Console Device Driver.
>
> NOTES:
> - This device driver is responsible for providing standard input and output
> - using */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,
> + 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
>
> - This device driver writes via ``rtems_putc()`` and reads via
> - ``getchark()``. The Termios framework is not used. There is no support to
> - change device settings, e.g. baud, stop bits, parity, etc.
> + * ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_TASK_CONSOLE_DRIVER``
>
> - The ``CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER`` configuration
> - option is mutually exclusive with the
> - ``CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER`` configuration option.
> + configuration options are mutually exclusive.
>
> .. index:: CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
>
>
More information about the devel
mailing list