RE: [PATCH 0/8] arm64: binman: use binman symbols for imx

Peng Fan
2022-06-03T06:37:50Z

> Subject: [PATCH 0/8] arm64: binman: use binman symbols for imx

Sorry I missed to add V6 in patchset subject, but I do add V6 changelog
below, please raise if you have concern, and I could resend with V6 in
patch subject.

Thanks,
Peng.

>
> From: Peng Fan <peng.fan@nxp.com>
>
> V6:
> Drop no-u-boot-any introduced in V5
> Drop binman symbol replacement with @ to _, which is not needed Update
> imx8m config to not select RAM IMAGE and RAM DEVICE Update ddr
> firmware node name Introduce autoconf.h for binman test
>
> V5:
> Introduce no-u-boot-any property to drop the X86 guard patch 1 Add
> blob-ext type for ddr firmware node Include a missing dts change
>
> V4:
> Fix three boards build failure
>
> V3:
> Add R-b/T-b
> Fix build warning
>
> V2:
> resolve some CI failure
> include patch 7
>
> binman symbol is a good feature, but only used on X86 for now. This patchset is
> to use it for i.MX8M platform.
>
> The current imx8m ddr phy firmware consumes lots of space, because we pad
> them to the largest 32KB and 16KB for IMEM and DMEM.
>
> With this patchset we use binman symbols to get firmware location and size, we
> could save near 36KB with i.MX8MP-EVK.
>
> Please help check and test
>
>
> Peng Fan (8):
> spl: Kconfig: not select SPL_RAW_IMAGE_SUPPORT for i.MX8M
> configs: imx8mm_data_modul_edm_sbc: not select SPL_RAM_DEVICE
> arm: dts: imx8m: update binman ddr firmware node name
> armv8: u-boot-spl.lds: mark __image_copy_start as symbol
> ddr: imx8m: helper: load ddr firmware according to binman symbols
> arm: dts: imx8m: shrink ddr firmware size to actual file size
> binman_sym: guard with CONFIG_IS_ENABLED(BINMAN_SYMBOLS)
> imx: imx8mm-icore: migrate to use BINMAN
>
> arch/arm/cpu/armv8/u-boot-spl.lds | 2 +-
> arch/arm/dts/imx8mm-u-boot.dtsi | 16 +++---
> arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi | 20 +++++---
> .../dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi | 8 +--
> arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi | 20 +++++---
> arch/arm/dts/imx8mn-evk-u-boot.dtsi | 20 +++++---
> .../dts/imx8mn-var-som-symphony-u-boot.dtsi | 16 +++---
> arch/arm/dts/imx8mn-venice-u-boot.dtsi | 16 +++---
> arch/arm/dts/imx8mp-u-boot.dtsi | 20 +++++---
> arch/arm/dts/imx8mq-cm-u-boot.dtsi | 20 +++++---
> arch/arm/dts/imx8mq-u-boot.dtsi | 16 +++---
> arch/arm/mach-imx/imx8m/Kconfig | 1 +
> .../mach-imx/imx8m/imximage-8mm-lpddr4.cfg | 10 +---
> common/spl/Kconfig | 1 +
> configs/imx8mm-icore-mx8mm-ctouch2_defconfig | 2 +-
> configs/imx8mm-icore-mx8mm-edimm2.2_defconfig | 2 +-
> configs/imx8mm_data_modul_edm_sbc_defconfig | 2 -
> drivers/ddr/imx/imx8m/helper.c | 51
> ++++++++++++++++---
> include/binman_sym.h | 2 +-
> tools/binman/test/Makefile | 2 +-
> tools/binman/test/generated/autoconf.h | 3 ++
> tools/binman/test/u_boot_binman_syms.c | 2 +-
> tools/binman/test/u_boot_binman_syms_size.c | 2 +-
> 23 files changed, 152 insertions(+), 102 deletions(-) create mode 100644
> tools/binman/test/generated/autoconf.h
>
> --
> 2.36.0