
Hi Martin,
On 07/10/24 18:24, Martin Stolpe wrote:
Hi Devarsh,
Am Do., 26. Sept. 2024 um 18:45 Uhr schrieb Devarsh Thakkar <devarsht@ti.com
:
Thanks for taking a look, I have posted them to the list [1], it would be great if you could provide a Reviewed-by or Tested-by too.
I've tried to compile the project for am64x_evm_a53 with the patches applied and I've added the following line to am64x_evm_a53_defconfig: CONFIG_OF_BOARD_SETUP=y When I then try to compile U-Boot using the following command: make am64x_evm_a53_defconfig; make
I get the following error message: aarch64-linux-gnu-ld.bfd: boot/image-fdt.o: in function `image_setup_libfdt': /home/mstolpe/repositories/build_base_station/build/workspace/sources/u-boot-copy/boot/image-fdt.c:633:(.text.image_setup_libfdt+0x150): undefined reference to `ft_board_setup' aarch64-linux-gnu-ld.bfd: cmd/fdt.o: in function `do_fdt': /home/mstolpe/repositories/build_base_station/build/workspace/sources/u-boot-copy/cmd/fdt.c:687:(.text.do_fdt+0xf98): undefined reference to `ft_board_setup' Segmentation fault (core dumped) make: *** [Makefile:1801: u-boot] Error 139 make: *** Deleting file 'u-boot'
I guess this shouldn't happen?
I think this is expected as you are trying to enable CONFIG_OF_BOARD_SETUP but AM64 platform does not implement ft_board_setup.
Platforms need to implement ft_board_setup for platform specific knobs (for e.g. simplefb for splash etc) if using CONFIG_OF_BOARD_SETUP as per below snippet in boot/image-fdt.c :
if (IS_ENABLED(CONFIG_OF_BOARD_SETUP)) {
const char *skip_board_fixup;
skip_board_fixup = env_get("skip_board_fixup");
if (skip_board_fixup && ((int)simple_strtol(skip_board_fixup, NULL, 10) == 1)) { printf("skip board fdt fixup\n");
} else {
fdt_ret = ft_board_setup(blob, gd->bd);
if (fdt_ret) {
printf("ERROR: board-specific fdt fixup failed: %s\n", fdt_strerror(fdt_ret));
goto err;
}
}
}
Regards Devarsh
BR Martin