]> git.baikalelectronics.ru Git - uboot.git/commit
console: Implement flush() function
authorPali Rohár <pali@kernel.org>
Mon, 5 Sep 2022 09:31:17 +0000 (11:31 +0200)
committerTom Rini <trini@konsulko.com>
Sat, 24 Sep 2022 14:47:01 +0000 (10:47 -0400)
commit18345348cf953a78519dd0c77b45e8057fdfca17
tree33cdbd83ade215b051708c04b9badd02dca9e64c
parent7e028ed0016600bd9b6ed040afaef396e49ff12f
console: Implement flush() function

On certain places it is required to flush output print buffers to ensure
that text strings were sent to console or serial devices. For example when
printing message that U-Boot is going to boot kernel or when U-Boot is
going to change baudrate of terminal device.

Therefore introduce a new flush() and fflush() functions into console code.
These functions will call .flush callback of associated stdio_dev device.

As this function may increase U-Boot side, allow to compile U-Boot without
this function. For this purpose there is a new config CONSOLE_FLUSH_SUPPORT
which is enabled by default and can be disabled. It is a good idea to have
this option enabled for all boards which have enough space for it.

When option is disabled when U-Boot defines just empty static inline
function fflush() to avoid ifdefs in other code.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
common/Kconfig
common/console.c
include/_exports.h
include/stdio.h
include/stdio_dev.h