Merge branch '2022-09-24-add-console-flush' into next
authorTom Rini <trini@konsulko.com>
Sat, 24 Sep 2022 17:58:49 +0000 (13:58 -0400)
committerTom Rini <trini@konsulko.com>
Sat, 24 Sep 2022 17:58:49 +0000 (13:58 -0400)
commit81da5042e514bfd27516d3530dde4d62a6708ca4
tree75203cc106a2c1c340024fdb562be7c9b6d0e4e2
parent694e9008674c2008b9ccdc25a9bb3ac078e20911
parentefc3f9526f9cfcd8614668c03b9c66b209782c41
Merge branch '2022-09-24-add-console-flush' into next

To quote the author:
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.

Some console devices, like UART, have putc/puts functions which just put
characters into HW transmit queue and do not wait until all data are
transmitted. Doing some sensitive operations (like changing baudrate or
starting kernel which resets UART HW) cause that U-Boot messages are lost.

Therefore introduce a new flush() function, implement it for all serial
devices via pending(false) callback and use this new flush() function on
sensitive places after which output device may go into reset state.

This change fixes printing of U-Boot messages:
"## Starting application at ..."
"## Switch baudrate to ..."

In addition, take a patch from Heinrich to rename some EFI test
functions in order to not conflict with this series.