I have restored a system using a cloned image and seeing an issue.
It has only one kernel image installed and the TIMEOUT is set to 2 sec but during bootup, bootloader waits for the user to select the kernel manually (even after timeout).
TIMEOUT 2
DEFAULT primary
MENU TITLE p2771-0000 eMMC boot options
LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
APPEND ${cbootargs} root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 noinitrd
…
…
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
409 bytes read in 65 ms (5.9 KiB/s)
p2771-0000 eMMC boot options
1: primary kernel
Enter choice:
Bootloader waits at ‘Enter choice’ indefinitely until you select the kernel.
The issue is not seen with the original system, any suggestions on how to resolve this?
The delay can be reduced, but I think a complete disable would require recompiling a custom U-Boot. If the serial UART is not used as a serial console you really have to disconnect the UART until boot is past U-Boot…and that only works if you disabled serial console in Linux (this latter is trivial to accomplish, whereas disable in U-Boot is not). Are you using this port for something other than serial console?
Are you able to set stdin to anything else than serial (say usbkbd or usbtty, maybe after after usb start) and saveenv ?
If not, as mentioned by @Linuxdev, you may indeed have to rebuild your own uboot.
I probably can, because I could set boot_delay to -2. And now I can’t change any parameters because of that. :-) .
Will changing stdin to any other, for example, non-existing ttySSS, will solve this? I’ll try to reset u-boot somehow, (disable boot_delay=-2) if it does.
This doesn’t work as well. Since serial looks like a keyword, I doubt just typing in a device name would fit. (I think it needs to be a specific option for setenv stdint, but I failed to find any documentation about it on the web.)