[OE-core] [OE-Core][PATCH] uboot-extlinux-config.bbclass: add support for timeout & default

Fabio Berton fabio.berton at ossystems.com.br
Thu Feb 9 20:25:31 UTC 2017


I get this error:

Exception: UnboundLocalError: local variable 'localdata' referenced before
assignment

You are using localdata.getVar('UBOOT_EXTLINUX_TIMEOUT') before localdata =
bb.data.createCopy(d).

On Thu, Feb 9, 2017 at 2:09 PM, Dalon Westergreen <dwesterg at gmail.com>
wrote:

> 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.
>
> Signed-off-by: Dalon Westergreen <dwesterg at gmail.com>
> ---
>  meta/classes/uboot-extlinux-config.bbclass | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
>
> diff --git a/meta/classes/uboot-extlinux-config.bbclass
> b/meta/classes/uboot-extlinux-config.bbclass
> index ec5fffb..96b5a2e 100644
> --- a/meta/classes/uboot-extlinux-config.bbclass
> +++ b/meta/classes/uboot-extlinux-config.bbclass
> @@ -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)
>
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20170209/8e558119/attachment-0002.html>


More information about the Openembedded-core mailing list