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 > > _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel