[U-Boot] [BUG] serial: ns16550: missing characters on serial output of rk3399 board

Roosen Henri Henri.Roosen at ginzinger.com
Mon Dec 3 14:44:09 UTC 2018


Since u-boot Commit 6f57c34473d3 (serial: ns16550: fix debug uart putc
called before init) the serial output from SPL boot on my rk3399 board
is missing characters.

Without the commit SPL-boot puts out a string "U-Boot SPL board init",
when this commit is in, the rk3399 board only prints a few of the
characters of that string ("U-o Lodnt").

Reading the thread at https://patchwork.ozlabs.org/patch/955765/, I
agree with Marek that "The real problem I believe is that someone can
call debug UART print/read functions before it is inited".

IMHO commits like these which try to make _debug_uart_putc() somewhat
work without a proper _debug_uart_init() don't make sense; fighting
sympthoms mostly leads to problems. Question is: what are the design
decisions regarding _debug_uart_init() and _debug_uart_putc()?

 * if _debug_uart_putc() is not allowed before _debug_uart_init(), then
that is what is broken and should be fixed.
 * if _debug_uart_putc() is allowed before _debug_uart_init(), then
implementations of _debug_uart_putc() should ignore printing until
_debug_uart_init() has been called. If a subsystem (like GD?) is
required to properly implement that design, then that subsystem should
be guaranteed to be available before any _debug_uart_putc() call...

So there is some design information needed, or probably it is available
and I'm not familiar with it (I'm not an active u-boot developer).
Please share the information with who is trying to properly fix the
initial issue.

Thanks,
Henri
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3608 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181203/64a9b58b/attachment.bin>


More information about the U-Boot mailing list