Re: [RFC PATCH v2 6/8] rockchip: Enable binman for ARM64

Andrew Abbott
2022-05-22T01:27:19Z

On Thu May 19, 2022 at 9:37 PM AEST, Alper Nebi Yasak wrote:
> On 16/05/2022 14:07, Andrew Abbott wrote:
> > Binman is now being used to build the final flashable images for
> > Rockchip devices, thus enabling it for all Rockchip targets here. But
> > it is not yet being used to generate the FIT image (u-boot.itb),
> > thus we need to force it to be built.
> >
> > Signed-off-by: Andrew Abbott <andrew@mirx.dev>
> > ---
> > Question: Will this causes issues with eg. Chromebook gru/bob, which build
> > u-boot.itb with binman already?
>
> They don't build u-boot.itb with binman. I don't think there would be a
> issue with them, but didn't actually test (will test later as I said).

I think I got confused with the 'rockchip-optee.dtsi` stuff. With your
comment on 2/8 on how it's not built when selecting CONFIG_ARM64, it's
probably not a problem.

> > (no changes since v1)
> >
> > Kconfig | 4 ++--
> > arch/arm/Kconfig | 2 +-
> > 2 files changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/Kconfig b/Kconfig
> > index 797038b037..7226986830 100644
> > --- a/Kconfig
> > +++ b/Kconfig
> > @@ -414,8 +414,8 @@ config BUILD_TARGET
> > default "u-boot-with-spl.sfp" if TARGET_SOCFPGA_GEN5
> > default "u-boot-spl.kwb" if ARCH_MVEBU && SPL
> > default "u-boot-elf.srec" if RCAR_GEN3
> > - default "u-boot.itb" if !BINMAN && SPL_LOAD_FIT && (ARCH_ROCKCHIP || \
> > - ARCH_SUNXI || RISCV || ARCH_ZYNQMP)
> > + default "u-boot.itb" if ARCH_ROCKCHIP || (!BINMAN && SPL_LOAD_FIT && \
> > + (ARCH_SUNXI || RISCV || ARCH_ZYNQMP))
>
> I can't see how this part is necessary, can you give a concrete example?
>
> It also makes evb-rk3288, chromebook_jerry, chromebook_speedy,
> evb-rk3036 fail to build (maybe more?).

I thought the original condition meant that 'u-boot.itb' wouldn't be
built (via 'make_atf_fit.py') if CONFIG_BINMAN was selected. So I
selected CONFIG_BINMAN below, then updated this condition to try and
force 'u-boot.itb' generation.

I tried reverting just that change and it seems to still build
correctly, so I will leave it as it was for the next version.

> > default "u-boot.kwb" if ARCH_KIRKWOOD
> > default "u-boot-with-spl.bin" if ARCH_AT91 && SPL_NAND_SUPPORT
> > default "u-boot-with-spl.imx" if ARCH_MX6 && SPL
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 0afec5155b..545bf9a8cc 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -1967,7 +1967,7 @@ config ARCH_STM32MP
> > config ARCH_ROCKCHIP
> > bool "Support Rockchip SoCs"
> > select BLK
> > - select BINMAN if SPL_OPTEE || (SPL && !ARM64)
> > + select BINMAN if SPL
> > select DM
> > select DM_GPIO
> > select DM_I2C