[PATCH v1 1/3] arm: xea: Modify board code to generate single binary u-boot
Tom Rini
trini at konsulko.com
Wed Dec 22 17:46:49 CET 2021
On Wed, Dec 22, 2021 at 01:49:02PM +0100, Lukasz Majewski wrote:
> This change provides the possibility to build XEA (imx287 based) board
> U-Boot as a single binary (without support for CONFIG_SPL_FRAMEWORK).
>
> The generated u-boot.sb can be used in the factory environment to for
> example perform initial setup or HW testing.
>
> It can be used with 'uuu' utility
> (SDPS: boot -f /srv/tftp/xea/u-boot.sb)
>
> The board_init_ll() is used in arch/arm/cpu/arm926ejs/mxs/start.S, which
> is utilized when CONFIG_SPL_FRAMEWORK is disabled.
>
> However, when it is enabled the arch/arm/cpu/arm926ejs/start.S is used,
> which requires the lowlevel_init() function.
>
> Signed-off-by: Lukasz Majewski <lukma at denx.de>
> ---
>
> board/liebherr/xea/spl_xea.c | 8 ++++++++
> board/liebherr/xea/xea.c | 3 ++-
> 2 files changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/board/liebherr/xea/spl_xea.c b/board/liebherr/xea/spl_xea.c
> index 192f68fca5f..5ee561b8b78 100644
> --- a/board/liebherr/xea/spl_xea.c
> +++ b/board/liebherr/xea/spl_xea.c
> @@ -290,6 +290,13 @@ u32 mxs_dram_vals[] = {
> 0x00000000, 0xffffffff
> };
>
> +/* #ifndef CONFIG_SPL_FRAMEWORK */
> +#if !CONFIG_IS_ENABLED(FRAMEWORK)
> +void board_init_ll(const u32 arg, const uint32_t *resptr)
> +{
> + mxs_common_spl_init(arg, resptr, iomux_setup, ARRAY_SIZE(iomux_setup));
> +}
> +#else
> void lowlevel_init(void)
> {
> struct mxs_pinctrl_regs *pinctrl_regs =
> @@ -301,3 +308,4 @@ void lowlevel_init(void)
>
> mxs_common_spl_init(0, NULL, iomux_setup, ARRAY_SIZE(iomux_setup));
> }
> +#endif
> diff --git a/board/liebherr/xea/xea.c b/board/liebherr/xea/xea.c
> index cd11b0ada77..685e2e26a18 100644
> --- a/board/liebherr/xea/xea.c
> +++ b/board/liebherr/xea/xea.c
> @@ -58,7 +58,8 @@ static void init_clocks(void)
> mxs_set_sspclk(MXC_SSPCLK3, 96000, 0);
> }
>
> -#ifdef CONFIG_SPL_BUILD
> +/* #if CONFIG_SPL_BUILD && CONFIG_SPL_FRAMEWORK */
> +#if CONFIG_IS_ENABLED(BUILD) && CONFIG_IS_ENABLED(FRAMEWORK)
> void board_init_f(ulong arg)
> {
> init_clocks();
I know checkpatch.pl has a warning, but maybe the text needs to be
tweaked there slightly? Using CONFIG_IS_ENABLED here is less readable /
clear than CONFIG_SPL_BUILD (which is special) and CONFIG_SPL_FRAMEWORK
(there's no CONFIG_FRAMEWORK and this board isn't going to use TPL).
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20211222/9775fbd6/attachment.sig>
More information about the U-Boot
mailing list