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

Peng Fan (OSS)
2022-06-03T06:34:57Z

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