Hi Heiko,
On 04/05/2019 04:30 PM, Heiko Stuebner wrote: > Enable both rk3288-evb variants to load an ATF binary between > spl and u-boot proper. Does this the same as aarch64 boot/load flow? tpl->spl->atf->u-boot > > Doing the regular spl->u-boot load of course still stays possible > with this change. > > Signed-off-by: Heiko Stuebner <he...@sntech.de> > --- > board/rockchip/evb_rk3288/evb-rk3288.c | 12 +++++- > board/rockchip/evb_rk3288/fit_spl_atf.its | 52 +++++++++++++++++++++++ Is it possible to re-use arch/arm/mach-rockchip/make_fit_atf.py? > configs/evb-rk3288-act8846_defconfig | 9 +++- > configs/evb-rk3288-rk808_defconfig | 9 +++- > 4 files changed, 77 insertions(+), 5 deletions(-) > create mode 100644 board/rockchip/evb_rk3288/fit_spl_atf.its > > diff --git a/board/rockchip/evb_rk3288/evb-rk3288.c > b/board/rockchip/evb_rk3288/evb-rk3288.c > index ec1d03c86c..05aea66db6 100644 > --- a/board/rockchip/evb_rk3288/evb-rk3288.c > +++ b/board/rockchip/evb_rk3288/evb-rk3288.c > @@ -15,4 +15,14 @@ void board_boot_order(u32 *spl_boot_list) > spl_boot_list[1] = BOOT_DEVICE_MMC1; > } > > -#endif > \ No newline at end of file > +#endif > + > +#ifdef CONFIG_SPL_LOAD_FIT > +int board_fit_config_name_match(const char *name) > +{ > + /* Just empty function now - can't decide what to choose */ > + debug("%s: %s\n", __func__, name); > + > + return 0; > +} > +#endif > diff --git a/board/rockchip/evb_rk3288/fit_spl_atf.its > b/board/rockchip/evb_rk3288/fit_spl_atf.its > new file mode 100644 > index 0000000000..67aff095d6 > --- /dev/null > +++ b/board/rockchip/evb_rk3288/fit_spl_atf.its > @@ -0,0 +1,52 @@ > +/* SPDX-License-Identifier: GPL-2.0+ OR X11 */ > +/* > + * Copyright (C) 2017 Theobroma Systems Design und Consulting GmbH > + * > + * Minimal dts for a SPL FIT image payload. > + */ > + > +/dts-v1/; > + > +/ { > + description = "FIT image with U-Boot proper, ATF bl32, DTB"; Why you name the ATF bl32, isn't it bl31? Thanks, - Kever > + #address-cells = <1>; > + > + images { > + uboot { > + description = "U-Boot (64-bit)"; > + data = /incbin/("../../../u-boot-nodtb.bin"); > + type = "standalone"; > + os = "U-Boot"; > + arch = "arm64"; > + compression = "none"; > + load = <0x00200000>; > + }; > + atf { > + description = "ARM Trusted Firmware"; > + data = /incbin/("../../../bl32-rk3288.bin"); > + type = "firmware"; > + os = "arm-trusted-firmware"; > + arch = "arm64"; > + compression = "none"; > + load = <0x00100000>; > + entry = <0x00100000>; > + }; > + > + fdt { > + description = "RK3288-EVB flat device-tree"; > + data = /incbin/("../../../u-boot.dtb"); > + type = "flat_dt"; > + compression = "none"; > + }; > + }; > + > + configurations { > + default = "conf"; > + conf { > + description = "Rockchip RK3288-EVB"; > + firmware = "atf"; > + loadables = "uboot"; > + fdt = "fdt"; > + }; > + }; > +}; > diff --git a/configs/evb-rk3288-act8846_defconfig > b/configs/evb-rk3288-act8846_defconfig > index 9c7be78ad7..0fcdaaa697 100644 > --- a/configs/evb-rk3288-act8846_defconfig > +++ b/configs/evb-rk3288-act8846_defconfig > @@ -1,21 +1,26 @@ > CONFIG_ARM=y > CONFIG_ARCH_ROCKCHIP=y > -CONFIG_SYS_TEXT_BASE=0x00100000 > +CONFIG_SYS_TEXT_BASE=0x00200000 > CONFIG_SYS_MALLOC_F_LEN=0x2000 > CONFIG_ROCKCHIP_RK3288=y > CONFIG_TARGET_EVB_RK3288=y > CONFIG_DEBUG_UART_BASE=0xff690000 > CONFIG_DEBUG_UART_CLOCK=24000000 > -CONFIG_SPL_STACK_R_ADDR=0x80000 > +CONFIG_SPL_STACK_R_ADDR=0x600000 > CONFIG_DEBUG_UART=y > CONFIG_NR_DRAM_BANKS=1 > # CONFIG_ANDROID_BOOT_IMAGE is not set > +CONFIG_FIT=y > +CONFIG_FIT_VERBOSE=y > +CONFIG_SPL_LOAD_FIT=y > +CONFIG_SPL_FIT_SOURCE="board/rockchip/evb_rk3288/fit_spl_atf.its" > CONFIG_SILENT_CONSOLE=y > CONFIG_DEFAULT_FDT_FILE="rk3288-evb-act8846.dtb" > # CONFIG_DISPLAY_CPUINFO is not set > CONFIG_DISPLAY_BOARDINFO_LATE=y > CONFIG_SPL_STACK_R=y > CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000 > +CONFIG_SPL_ATF=y > CONFIG_CMD_GPIO=y > CONFIG_CMD_GPT=y > CONFIG_CMD_I2C=y > diff --git a/configs/evb-rk3288-rk808_defconfig > b/configs/evb-rk3288-rk808_defconfig > index 73d30c9958..f6b9ce12a1 100644 > --- a/configs/evb-rk3288-rk808_defconfig > +++ b/configs/evb-rk3288-rk808_defconfig > @@ -1,21 +1,26 @@ > CONFIG_ARM=y > CONFIG_ARCH_ROCKCHIP=y > -CONFIG_SYS_TEXT_BASE=0x00100000 > +CONFIG_SYS_TEXT_BASE=0x00200000 > CONFIG_SYS_MALLOC_F_LEN=0x2000 > CONFIG_ROCKCHIP_RK3288=y > CONFIG_TARGET_EVB_RK3288=y > CONFIG_DEBUG_UART_BASE=0xff690000 > CONFIG_DEBUG_UART_CLOCK=24000000 > -CONFIG_SPL_STACK_R_ADDR=0x80000 > +CONFIG_SPL_STACK_R_ADDR=0x600000 > CONFIG_DEBUG_UART=y > CONFIG_NR_DRAM_BANKS=1 > # CONFIG_ANDROID_BOOT_IMAGE is not set > +CONFIG_FIT=y > +CONFIG_FIT_VERBOSE=y > +CONFIG_SPL_LOAD_FIT=y > +CONFIG_SPL_FIT_SOURCE="board/rockchip/evb_rk3288/fit_spl_atf.its" > CONFIG_SILENT_CONSOLE=y > CONFIG_DEFAULT_FDT_FILE="rk3288-evb-rk808.dtb" > # CONFIG_DISPLAY_CPUINFO is not set > CONFIG_DISPLAY_BOARDINFO_LATE=y > CONFIG_SPL_STACK_R=y > CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x2000 > +CONFIG_SPL_ATF=y > CONFIG_CMD_GPIO=y > CONFIG_CMD_GPT=y > CONFIG_CMD_I2C=y _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot