zephyr/subsys/console
Paul Sokolovsky a7df3a1e09 tty: Support unbuffered operation to extend usecase coverage
The whole "tty" concept is conceived around efficient
interrupt-driven operation. However, it's beneficial to add
non interupt-driven operation under the same API:

1. Wider usecase coverage in general.
2. Allows to use the same familiar API (based on POSIX concepts)
even for UART implementations without interrupt support.
3. Allows to switch operation dynamically based on the needs.
For example, if the system is in degraded mode and interrupt
handling cannot be trusted/disabled, allows to still output
diagnostic information to user. This was the original motivation
to provide such a mode, to support logging subsystem's "panic"
mode.

To implement this feature, tty_set_rx_buf() and tty_set_tx_buf()
functions are provided, allowing to reconfigure buffers used
dynamically. If configured buffer length is 0, the operation
switched to unbuffered.

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2018-12-20 12:21:49 +01:00
..
CMakeLists.txt subsys: console: Split serial tty handling to a separate module 2018-10-03 16:40:49 +02:00
getchar.c subsys: console: Split tty definitions into tty.h, to form its own API 2018-11-30 08:05:40 -08:00
getline.c samples, subsys, tests: Use ARRAY_SIZE() whenever possible 2018-06-14 19:12:51 -04:00
Kconfig subsys: console: Mark as EXPERIMENTAL. 2018-08-14 11:56:42 -07:00
line_fifo.c subsys: console: Factor out fifo-based console input abstraction 2018-06-20 15:59:12 -04:00
tty.c tty: Support unbuffered operation to extend usecase coverage 2018-12-20 12:21:49 +01:00