uboot-extlinux-config.bbclass: add support for timeout & default

When multible targets are defined it is useful to allow for
a default target along with a timeout.  After timeout, the
default target will be selected.

(From OE-Core rev: 1e01c2e32c168805a9b71c1dba4b487916955813)

Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Dalon Westergreen
2017-02-07 15:46:29 -08:00
committed by Richard Purdie
parent 4794518720
commit 6f3f9457a6

View File

@@ -16,6 +16,10 @@
# concatenate and use as an initrd (optional).
# UBOOT_EXTLINUX_MENU_DESCRIPTION - Name to use as description.
# UBOOT_EXTLINUX_ROOT - Root kernel cmdline.
# UBOOT_EXTLINUX_TIMEOUT - Timeout before DEFAULT selection is made.
# Measured in 1/10 of a second.
# UBOOT_EXTLINUX_DEFAULT_LABEL - Target to be selected by default after
# the timeout period
#
# If there's only one label system will boot automatically and menu won't be
# created. If you want to use more than one labels, e.g linux and alternate,
@@ -25,6 +29,9 @@
#
# UBOOT_EXTLINUX_LABELS ??= "default fallback"
#
# UBOOT_EXTLINUX_DEFAULT_LABEL ??= "Linux Default"
# UBOOT_EXTLINUX_TIMEOUT ??= "30"
#
# UBOOT_EXTLINUX_KERNEL_IMAGE_default ??= "../zImage"
# UBOOT_EXTLINUX_MENU_DESCRIPTION_default ??= "Linux Default"
#
@@ -34,6 +41,8 @@
# Results:
#
# menu title Select the boot mode
# TIMEOUT 30
# DEFAULT Linux Default
# LABEL Linux Default
# KERNEL ../zImage
# FDTDIR ../
@@ -82,6 +91,15 @@ python create_extlinux_config() {
if len(labels.split()) > 1:
cfgfile.write('menu title Select the boot mode\n')
timeout = localdata.getVar('UBOOT_EXTLINUX_TIMEOUT')
if timeout:
cfgfile.write('TIMEOUT %s\n' % (timeout))
if len(labels.split()) > 1:
default = localdata.getVar('UBOOT_EXTLINUX_DEFAULT_LABEL')
if default:
cfgfile.write('DEFAULT %s\n' % (default))
for label in labels.split():
localdata = bb.data.createCopy(d)