diff options
author | Stephan Gerhold | 2021-07-14 10:56:26 +0200 |
---|---|---|
committer | Tom Rini | 2021-07-23 18:53:46 -0400 |
commit | ad7e967738a9c639e07cf50b83ffccdf9a8537b0 (patch) | |
tree | a8b752dd4bbbdf924b95d0a3b0a59b0bdf505492 /env | |
parent | ccb8de2387c66b61bb8b974dea9018a8ab63d847 (diff) |
serial: serial_msm: Delay initialization to let pins stabilize
For some reason, the DragonBoard 410c aborts autoboot immediately if
U-Boot is started without LK. It looks like it picks up a single broken
character via serial and therefore believes a key was pressed to abort
autoboot.
After some debugging, it seems like adding some delay after pinctrl
setup but before UART initialization fixes the issue. It's also worth
mentioning that unlike when booting from LK, the pinctrl setup is
actually necessary when booting U-Boot without LK since UART is broken
if the pinctrl line is removed.
I suspect that reconfiguring the pins might take some time to stabilize
and if the UART controller is enabled too quickly it will pick up some
random noise. Adding a few milliseconds of delay fixes the issue and
shouldn't have any other negative side effects.
3ms seems to be the minimum delay required in my tests, use 5ms instead
just to be sure.
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Diffstat (limited to 'env')
0 files changed, 0 insertions, 0 deletions