experimental boot menu support

Werner Almesberger werner at openmoko.org
Sat Feb 24 07:00:15 CET 2007

Latest SVN (revision 1093) now has basic boot menu support.

If the AUX button is held while powering up with the POWER button, the
device enters the boot menu. The time POWER must be held down is the
same as for regular activation, so there isn't any extra risk for
accidental activation.

In the boot menu, a number of items is shown, by default "Boot" and
"Factory reset". Between these, users can add more items by setting
the environment variables "menu_1", "menu_2", etc. The values of these
variables must be either
setenv menu_1 Take a nap:sleep 3600

The current choice is highlighted. The next item it chosen by pressing
AUX. The current choice is executed with POWER. The boot menu then
(slowly) clears the screen, executes the command(s), waits a couple of
seconds, and then starts again (unless, of course, the command did a
reset, boot, or similar).

If there is no user input in the boot menu for a minute, the device
powers down from.

To see this on the Neo screen, you have to
setenv stdout vga
before doing the AUX+POWER activation. (In a future version, the
switch to the internal console will happen automatically.)

The function and naming of the hard-coded choices isn't final yet
either. However, the "factory reset" function will certainly stay.
(It just clears the environment, without saving it in NAND, and
boots. The idea is that this will safely get us into Linux, where
user space can take care of any further cleanup, e.g., reset the
touch screen calibration. When doing a regular boot, a yet to be
defined kernel boot parameter will tell it that this isn't a
"factory reset".)

Cheers, Werner

 / Werner Almesberger, Buenos Aires, Argentina     werner at almesberger.net /

More information about the openmoko-uboot mailing list