Wolfgang Denk wd at denx.de
Tue Jun 17 06:42:52 CEST 2014

Dear Larry,

In message <5070A944-CC27-4388-91E5-78B0792E590C at usgs.gov> you wrote:
> A recent situation has awakened me to a a behavior of U-Boot that maybe should be changed.

U-Boot related questions should better be discussed on the U-Boot
(rather than the ELDK) mailing list.  I'm adding the U-Boot list on

> I am experimenting with a BeagleBone Black (BBB) single-board
> computer.  Occasionally when I perform a reboot, the BBB never
> finishes booting Linux.  When I happen to have a console cable
> connected, I see the U-Boot prompt.  This explains why the BBB has not
> booted Linux.  But it is a mystery why U-Boot is waiting for a command
> when I did not request interrupting the autoboot sequence.
> I found many others reporting the same experience -- and no solution.
> Until I found Andrew Glen's 10/28/2013 post at
> https://groups.google.com/forum/#!topic/beagleboard/aXv6An1xfqI about
> U-Boot hangs likely due to noise on the UART0 port.  The solution he
> applied was to rebuild U-Boot to require specific text -- "uboot" --
> to interrupt the autoboot sequence.  (BBB have no flash, so there is
> no opportunity to permanently alter any U-Boot environment variables,
> if this is settable.)

You should be able to store the environment on SDCard.

> It occurs to me that this might be a more common occurrence on any
> number of circuit boards.

No, this is in no way a common issue.  If you have any such line noise
on a serial port, you should start looking for hardware (design)
problems.  This is _not_ normal.  IF several boards of a specific
brand show such a problem, then I'm willing to bet that it's caused by
broken  (or simply too cheap) hardware design.

No industrial grade board I've ever seen has any such issues.

> I have used many ARM single-board computers that have U-Boot.  As far
> as I recall, they all prompt "Hit any key to stop autoboot:".  It is
> probably not such a good idea that ANY character can interrupt the
> U-Boot autoboot sequence.  Perhaps the default should be to require an
> unusual character, like F2 or DEL for BIOS.  Or a multi-character
> sequence within a short period of time, like the "+++" to enter
> command mode on the old Hayes modems.

U-Boot allows you to do that, if you really need/want to.

> As I said, this awakening only occurred to me because of my recent
> experience with boot failures.  My realization is that U-Boot could
> probably do a little better job of protecting our (likely unattended,
> embedded) systems with a minimum of change to the code.  I plan to
> make it my practice to #define CONFIG_AUTOBOOT_DELAY_STR.  I'm
> thinking that should probably be the default.

U-Boot allows you such customization.  But I disagree that this should
be the default.  Actually you are just papering over a hardware
problem.  Line noise on a serial port that inserts phantom characters
is something that should be fixed, not ignored.  And on ony well-
behaving hardware the problem that bothers you simply does not exist.

> Thank you for your valuable contributions (U-Boot and more).

You are welcome.

Best regards,

Wolfgang Denk

DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"We don't have to protect the environment -- the Second Coming is  at
hand."                                                   - James Watt

More information about the eldk mailing list