Message ID | 20200126035522.510799-4-marcel@ziswiler.com |
---|---|
State | Superseded |
Headers | show |
Series | board: toradex: prepare and add Verdin iMX8M Mini support | expand |
On Sun, Jan 26, 2020 at 5:55 AM Marcel Ziswiler <marcel at ziswiler.com> wrote: > > From: Marcel Ziswiler <marcel.ziswiler at toradex.com> > > Add support for storing configuration for Apalis iMX8X SoM > in Toradex config block. > > Signed-off-by: Marcel Ziswiler <marcel.ziswiler at toradex.com> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov at toradex.com> > > --- > > Changes in v2: > - Newly added this patch to the series splitting Verdin one as suggested > by Oleksandr. > > board/toradex/common/tdx-cfg-block.c | 17 ++++++++++++++++- > board/toradex/common/tdx-cfg-block.h | 2 ++ > 2 files changed, 18 insertions(+), 1 deletion(-) > > diff --git a/board/toradex/common/tdx-cfg-block.c b/board/toradex/common/tdx-cfg-block.c > index 9c86230595..cdd8befbf8 100644 > --- a/board/toradex/common/tdx-cfg-block.c > +++ b/board/toradex/common/tdx-cfg-block.c > @@ -1,6 +1,6 @@ > // SPDX-License-Identifier: GPL-2.0+ > /* > - * Copyright (c) 2016-2019 Toradex, Inc. > + * Copyright (c) 2016-2020 Toradex, Inc. > */ > > #include <common.h> > @@ -8,6 +8,7 @@ > > #if defined(CONFIG_TARGET_APALIS_IMX6) || \ > defined(CONFIG_TARGET_APALIS_IMX8) || \ > + defined(CONFIG_TARGET_APALIS_IMX8X) || \ > defined(CONFIG_TARGET_COLIBRI_IMX6) || \ > defined(CONFIG_TARGET_COLIBRI_IMX8X) > #include <asm/arch/sys_proto.h> > @@ -112,6 +113,8 @@ const char * const toradex_modules[] = { > [50] = "Colibri iMX8 QuadXPlus 2GB IT", > [51] = "Colibri iMX8 DualX 1GB Wi-Fi / Bluetooth", > [52] = "Colibri iMX8 DualX 1GB", > + [53] = "Apalis iMX8 QuadXPlus 2GB ECC IT", > + [54] = "Apalis iMX8 DualXPlus 1GB", > }; > > #ifdef CONFIG_TDX_CFG_BLOCK_IS_IN_MMC > @@ -307,6 +310,7 @@ static int get_cfgblock_interactive(void) > it = console_buffer[0]; > > #if defined(CONFIG_TARGET_APALIS_IMX8) || \ > + defined(CONFIG_TARGET_APALIS_IMX8X) || \ > defined(CONFIG_TARGET_COLIBRI_IMX6ULL) || \ > defined(CONFIG_TARGET_COLIBRI_IMX8X) > sprintf(message, "Does the module have Wi-Fi / Bluetooth? [y/N] "); > @@ -370,6 +374,16 @@ static int get_cfgblock_interactive(void) > tdx_hw_tag.prodid = APALIS_IMX8QP; > } > } else if (is_cpu_type(MXC_CPU_IMX8QXP)) { > +#ifdef CONFIG_TARGET_APALIS_IMX8X > + if (it == 'y' || it == 'Y' || wb == 'y' || wb == 'Y') { > + tdx_hw_tag.prodid = APALIS_IMX8QXP_WIFI_BT_IT; > + } else { > + if (gd->ram_size == 0x40000000) > + tdx_hw_tag.prodid = APALIS_IMX8DXP; > + else > + tdx_hw_tag.prodid = APALIS_IMX8QXP; > + } > +#elif CONFIG_TARGET_COLIBRI_IMX8X > if (it == 'y' || it == 'Y') { > if (wb == 'y' || wb == 'Y') > tdx_hw_tag.prodid = COLIBRI_IMX8QXP_WIFI_BT_IT; > @@ -381,6 +395,7 @@ static int get_cfgblock_interactive(void) > else > tdx_hw_tag.prodid = COLIBRI_IMX8DX; > } > +#endif > } else if (!strcmp("tegra20", soc)) { > if (it == 'y' || it == 'Y') > if (gd->ram_size == 0x10000000) > diff --git a/board/toradex/common/tdx-cfg-block.h b/board/toradex/common/tdx-cfg-block.h > index bfdc8b7f70..319b2a0087 100644 > --- a/board/toradex/common/tdx-cfg-block.h > +++ b/board/toradex/common/tdx-cfg-block.h > @@ -73,6 +73,8 @@ enum { > COLIBRI_IMX8QXP_IT, /* 50 */ > COLIBRI_IMX8DX_WIFI_BT, > COLIBRI_IMX8DX, > + APALIS_IMX8QXP, > + APALIS_IMX8DXP, > }; > > extern const char * const toradex_modules[]; > -- > 2.24.1 >
diff --git a/board/toradex/common/tdx-cfg-block.c b/board/toradex/common/tdx-cfg-block.c index 9c86230595..cdd8befbf8 100644 --- a/board/toradex/common/tdx-cfg-block.c +++ b/board/toradex/common/tdx-cfg-block.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0+ /* - * Copyright (c) 2016-2019 Toradex, Inc. + * Copyright (c) 2016-2020 Toradex, Inc. */ #include <common.h> @@ -8,6 +8,7 @@ #if defined(CONFIG_TARGET_APALIS_IMX6) || \ defined(CONFIG_TARGET_APALIS_IMX8) || \ + defined(CONFIG_TARGET_APALIS_IMX8X) || \ defined(CONFIG_TARGET_COLIBRI_IMX6) || \ defined(CONFIG_TARGET_COLIBRI_IMX8X) #include <asm/arch/sys_proto.h> @@ -112,6 +113,8 @@ const char * const toradex_modules[] = { [50] = "Colibri iMX8 QuadXPlus 2GB IT", [51] = "Colibri iMX8 DualX 1GB Wi-Fi / Bluetooth", [52] = "Colibri iMX8 DualX 1GB", + [53] = "Apalis iMX8 QuadXPlus 2GB ECC IT", + [54] = "Apalis iMX8 DualXPlus 1GB", }; #ifdef CONFIG_TDX_CFG_BLOCK_IS_IN_MMC @@ -307,6 +310,7 @@ static int get_cfgblock_interactive(void) it = console_buffer[0]; #if defined(CONFIG_TARGET_APALIS_IMX8) || \ + defined(CONFIG_TARGET_APALIS_IMX8X) || \ defined(CONFIG_TARGET_COLIBRI_IMX6ULL) || \ defined(CONFIG_TARGET_COLIBRI_IMX8X) sprintf(message, "Does the module have Wi-Fi / Bluetooth? [y/N] "); @@ -370,6 +374,16 @@ static int get_cfgblock_interactive(void) tdx_hw_tag.prodid = APALIS_IMX8QP; } } else if (is_cpu_type(MXC_CPU_IMX8QXP)) { +#ifdef CONFIG_TARGET_APALIS_IMX8X + if (it == 'y' || it == 'Y' || wb == 'y' || wb == 'Y') { + tdx_hw_tag.prodid = APALIS_IMX8QXP_WIFI_BT_IT; + } else { + if (gd->ram_size == 0x40000000) + tdx_hw_tag.prodid = APALIS_IMX8DXP; + else + tdx_hw_tag.prodid = APALIS_IMX8QXP; + } +#elif CONFIG_TARGET_COLIBRI_IMX8X if (it == 'y' || it == 'Y') { if (wb == 'y' || wb == 'Y') tdx_hw_tag.prodid = COLIBRI_IMX8QXP_WIFI_BT_IT; @@ -381,6 +395,7 @@ static int get_cfgblock_interactive(void) else tdx_hw_tag.prodid = COLIBRI_IMX8DX; } +#endif } else if (!strcmp("tegra20", soc)) { if (it == 'y' || it == 'Y') if (gd->ram_size == 0x10000000) diff --git a/board/toradex/common/tdx-cfg-block.h b/board/toradex/common/tdx-cfg-block.h index bfdc8b7f70..319b2a0087 100644 --- a/board/toradex/common/tdx-cfg-block.h +++ b/board/toradex/common/tdx-cfg-block.h @@ -73,6 +73,8 @@ enum { COLIBRI_IMX8QXP_IT, /* 50 */ COLIBRI_IMX8DX_WIFI_BT, COLIBRI_IMX8DX, + APALIS_IMX8QXP, + APALIS_IMX8DXP, }; extern const char * const toradex_modules[];