Message ID | 20230219150629.4012377-1-jonas@kwiboo.se |
---|---|
Headers | show |
Series | rockchip: Use external TPL binary to create a working firmware image | expand |
Hi, tested this series on top of 2023.04-rc2 on bananapi r2, works well if i disable CONFIG_OF_SYSTEM_SETUP else i get this error: LD u-boot aarch64-linux-gnu-ld.bfd: boot/image-fdt.o: in function `image_setup_libfdt': /media/data_nvme/git/uboot/u-boot/boot/image-fdt.c:661: undefined reference to `ft_system_setup' aarch64-linux-gnu-ld.bfd: cmd/fdt.o: in function `do_fdt': /media/data_nvme/git/uboot/u-boot/cmd/fdt.c:272: undefined reference to `ft_system_setup' Segmentation fault (core dumped) make: *** [Makefile:1753: u-boot] Error 139 make: *** Deleting file 'u-boot' build failed! because there is no implementation for this function for rockchip: https://elixir.bootlin.com/u-boot/v2023.04-rc2/C/ident/ft_system_setup i had this option set in my defconfig from 2022-04 before it was broken by binman patches, but do not remember why i have added it. but basicly it works again, so Tested-By: Frank Wunderlich <frank-w@public-files.de> regards Frank > Gesendet: Sonntag, 19. Februar 2023 um 16:06 Uhr > Von: "Jonas Karlman" <jonas@kwiboo.se> > An: "Simon Glass" <sjg@chromium.org>, "Philipp Tomsich" <philipp.tomsich@vrull.eu>, "Kever Yang" <kever.yang@rock-chips.com>, "Joseph Chen" <chenjh@rock-chips.com>, "Alper Nebi Yasak" <alpernebiyasak@gmail.com> > Cc: "Quentin Schulz" <quentin.schulz@theobroma-systems.com>, "Jagan Teki" <jagan@edgeble.ai>, "Heinrich Schuchardt" <xypron.glpk@gmx.de>, u-boot@lists.denx.de, "Jonas Karlman" <jonas@kwiboo.se> > Betreff: [PATCH v4 0/4] rockchip: Use external TPL binary to create a working firmware image > > Rockchip SoCs typically use U-Boot TPL to initialize DRAM, then jumps > back to BootRom to load next stage, U-Boot SPL, into DRAM. BootRom then > jumps to U-Boot SPL to continue the boot flow. > > For RK356x there is no support to initialize DRAM using U-Boot > TPL and instead an external TPL binary must be used to generate a > bootable u-boot-rockchip.bin image. > > This adds a new rockchip-tpl entry to binman and make use of this new > entry in rockchip-u-boot.dtsi. > > Build U-Boot with ROCKCHIP_TPL=/path/to/ddr.bin to generate a > bootable u-boot-rockchip.bin image for RK356x. > > I have dropped the RFC patch that was related to showing a friendly > message instead of a generic file not found message when TPL blob is > missing in v3. Will address that in a follow-up series. > > The last patch that updates evb-rk3568_defconfig was dropped in v4. > Will address that and more config options in a follow-up series. > > Changes in v4: > - Only change init size limit for rk3328 and rk3568 > - Drop update evb-rk3568_defconfig patch > > Changes in v3: > - Move test function last > - Add help text to Kconfig option > - Add build step for rk3568 to documentation > - Resync init size limit table > - Drop missing message RFC patch > > Changes in v2: > - Renamed external-tpl to rockchip-tpl > - Renamed EXTERNAL_TPL to ROCKCHIP_TPL > - Add CONFIG_ROCKCHIP_EXTERNAL_TPL Kconfig option > - New patch to sync init size limit in mkimage > - New RFC patch to improve allow-missing/fake-ext-blobs handling for > binman mkimage entry > > Jonas Karlman (4): > binman: Add support for a rockchip-tpl entry > rockchip: Use an external TPL binary on RK3568 > Revert "board: rockchip: Fix binman_init failure on EVB-RK3568" > rockchip: mkimage: Update init size limit for RK3328 and RK3568 > > Makefile | 1 + > arch/arm/dts/rockchip-u-boot.dtsi | 10 ++++++++-- > arch/arm/mach-rockchip/Kconfig | 8 ++++++++ > configs/evb-rk3568_defconfig | 1 - > doc/board/rockchip/rockchip.rst | 11 +++++++++++ > tools/binman/entries.rst | 14 ++++++++++++++ > tools/binman/etype/rockchip_tpl.py | 20 ++++++++++++++++++++ > tools/binman/ftest.py | 7 +++++++ > tools/binman/missing-blob-help | 5 +++++ > tools/binman/test/277_rockchip_tpl.dts | 16 ++++++++++++++++ > tools/rkcommon.c | 4 ++-- > 11 files changed, 92 insertions(+), 5 deletions(-) > create mode 100644 tools/binman/etype/rockchip_tpl.py > create mode 100644 tools/binman/test/277_rockchip_tpl.dts > > -- > 2.39.2 > >