On 08.09.2025 14:31, Stephan Gerhold via groups.io wrote:
There have been issues with autoboot on DB410c for years, where autoboot
gets interrupted by spurious input on the UART console. I've tried fixing
this back in 2021, but it turned out this fix was not enough. Looking into
it further, there are two separate issues to fix:
- Spurious input with UART disconnected: The RX pin is floating in this
case, resulting in garbage or a UART break event (0x00 byte). This is
interpreted as input in the autoboot prompt. Fix this by adding
bias-pull-up for the RX pin. I've made this change upstream in Linux
6.16 for all MSM8916/MSM8939 devices and it has already landed in U-Boot
through the recent subtree update of dts/upstream.
- Spurious input when querying console size with UART connected: It's
unclear why this happens, but it seems to be some issue in the overly
complex implementation of 4-character packing mode in the serial_msm
driver. Fix this by switching the driver to use the more simple
single-character mode, which doesn't have this issue.
With these patches, autoboot is finally working reliably on DragonBoard
410c (and hopefully will remain so for the future :-)).
FWIW I've tested this series using serial UART DM interface on SDM660
device. It does not fix *all* the issues needed for it to function
there, but I can confirm it does not break anything and makes things
much better than before, now with proper resetting and single-character
mode it's possible to not rely on configuration from previous boot
loader, for example.
Tested-by: Alexey Minnekhanov <alexey...@minlexx.ru>
--
Regards,
Alexey Minnekhanov