[U-Boot] [PATCH v2 5/9] mx7: set soc environment according to exact SoC type
Fabio Estevam
festevam at gmail.com
Tue Jul 19 00:19:22 CEST 2016
On Wed, Jul 13, 2016 at 4:25 AM, Stefan Agner <stefan at agner.ch> wrote:
> From: Stefan Agner <stefan.agner at toradex.com>
>
> This can be useful if the same U-Boot binary is used for boards
> available with a i.MX 7Solo and i.MX 7Dual.
>
> Signed-off-by: Stefan Agner <stefan.agner at toradex.com>
> Reviewed-by: Simon Glass <sjg at chromium.org>
> ---
>
> arch/arm/cpu/armv7/mx7/soc.c | 14 ++++++++++++++
> include/configs/mx7_common.h | 2 ++
> 2 files changed, 16 insertions(+)
>
> diff --git a/arch/arm/cpu/armv7/mx7/soc.c b/arch/arm/cpu/armv7/mx7/soc.c
> index ef46c92..dead1d3 100644
> --- a/arch/arm/cpu/armv7/mx7/soc.c
> +++ b/arch/arm/cpu/armv7/mx7/soc.c
> @@ -248,6 +248,20 @@ int arch_cpu_init(void)
> return 0;
> }
>
> +#ifdef CONFIG_ARCH_MISC_INIT
> +int arch_misc_init(void)
> +{
> +#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
> + if (is_mx7d())
> + setenv("soc", "imx7d");
> + else
> + setenv("soc", "imx7s");
> +#endif
> +
> + return 0;
> +}
> +#endif
What about adding the following code in your board file?
int board_late_init(void)
{
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
if (is_mx7d())
setenv("board_rev", "MX7D");
else
setenv("board_rev", "MX7S");
#endif
return 0;
}
This was the suggestion I got from Tom when I was doing runtime SoC
detection for mx6cubox.
More information about the U-Boot
mailing list