
Hi Venkatakrishnan,
On Tue, 22 Nov 2022 at 05:48, Venkatakrishnan S ic11539 venkatakrishnan.sutharsan@imail.iitm.ac.in wrote:
I looked into the Kconfig and made changes so that it can be selected. I have some issues while generating u-boot-spl and log is as follows.
Can you please avoid top posting?
HOSTCC tools/mkenvimage.o HOSTCC tools/fit_image.o HOSTCC tools/image-host.o HOSTCC tools/dumpimage.o HOSTCC tools/mkimage.o HOSTLD tools/mkenvimage HOSTLD tools/dumpimage HOSTLD tools/mkimage CC cmd/version.o CC common/main.o In file included from include/config.h:4, from include/common.h:16, from cmd/version.c:7: include/configs/shakti-arty100.h:21: warning: "CONFIG_SPL_LOAD_FIT_ADDRESS" redefined 21 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x84000000
My guess is that this is supposed in be in defconfig, not the config.h file
|
In file included from ././include/linux/kconfig.h:4, from <command-line>: include/generated/autoconf.h:74: note: this is the location of the previous definition 74 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x80000000 | In file included from include/config.h:4, from include/common.h:16, from common/main.c:9: include/configs/shakti-arty100.h:21: warning: "CONFIG_SPL_LOAD_FIT_ADDRESS" redefined 21 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x84000000 | In file included from ././include/linux/kconfig.h:4, from <command-line>: include/generated/autoconf.h:74: note: this is the location of the previous definition 74 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x80000000 | LD cmd/built-in.o CC lib/smbios.o CC lib/display_options.o In file included from include/config.h:4, from include/common.h:16, from lib/smbios.c:8: include/configs/shakti-arty100.h:21: warning: "CONFIG_SPL_LOAD_FIT_ADDRESS" redefined 21 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x84000000 | In file included from ././include/linux/kconfig.h:4, from <command-line>: include/generated/autoconf.h:74: note: this is the location of the previous definition 74 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x80000000 | LD common/built-in.o In file included from include/config.h:4, from include/common.h:16, from lib/display_options.c:7: include/configs/shakti-arty100.h:21: warning: "CONFIG_SPL_LOAD_FIT_ADDRESS" redefined 21 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x84000000 | In file included from ././include/linux/kconfig.h:4, from <command-line>: include/generated/autoconf.h:74: note: this is the location of the previous definition 74 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x80000000 | LD lib/built-in.o LD u-boot OBJCOPY u-boot.srec OBJCOPY u-boot-nodtb.bin SYM u-boot.sym CC spl/common/spl/spl.o In file included from include/config.h:4, from include/common.h:16, from common/spl/spl.c:9: include/configs/shakti-arty100.h:21: warning: "CONFIG_SPL_LOAD_FIT_ADDRESS" redefined 21 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x84000000 | In file included from ././include/linux/kconfig.h:4, from <command-line>: include/generated/autoconf.h:74: note: this is the location of the previous definition 74 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x80000000 | CC spl/lib/display_options.o In file included from include/config.h:4, from include/common.h:16, from lib/display_options.c:7: include/configs/shakti-arty100.h:21: warning: "CONFIG_SPL_LOAD_FIT_ADDRESS" redefined 21 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x84000000 | In file included from ././include/linux/kconfig.h:4, from <command-line>: include/generated/autoconf.h:74: note: this is the location of the previous definition 74 | #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x80000000 | LD spl/lib/built-in.o LD spl/common/spl/built-in.o LD spl/u-boot-spl riscv-gnu-toolchain-installation/bin/riscv64-unknown-linux-gnu-ld.bfd: common/spl/built-in.o: in function `board_boot_order': linux-devkit/bootloaders/uboot/common/spl/spl.c:503: undefined reference to `spl_boot_device'
I suppose you need to define that function like other boards do.
riscv-gnu-toolchain-installation/bin/riscv64-unknown-linux-gnu-ld.bfd: drivers/built-in.o: in function `mmc_spi_readdata': linux-devkit/bootloaders/uboot/drivers/mmc/mmc_spi.c:206: undefined reference to `crc16_ccitt' riscv-gnu-toolchain-installation/bin/riscv64-unknown-linux-gnu-ld.bfd: drivers/built-in.o: in function `dm_mmc_spi_request': linux-devkit/bootloaders/uboot/drivers/mmc/mmc_spi.c:442: undefined reference to `crc16_ccitt'
For these, you should find the function and figure out why it is not being compiled in SPL. Since lib/Makefile always compiles this file, it likely means that the whole lib/ directory is not included in the SPL build, so you can enable SPL_LIBGENERIC_SUPPORT to fix that.
make[2]: *** [scripts/Makefile.spl:439: spl/u-boot-spl] Error 1 make[1]: *** [Makefile:1947: spl/u-boot-spl] Error 2 make[1]: Leaving directory 'linux-devkit/bootloaders/uboot' make: *** [Makefile:227: image] Error 2
Any idea on where I am missing something which can be causing this.?
Thanks in advacne
On Sat, Nov 19, 2022 at 2:20 AM Simon Glass sjg@chromium.org wrote:
Hi Venkatakrishnan,
On Wed, 16 Nov 2022 at 16:56, Venkatakrishnan S ic11539 venkatakrishnan.sutharsan@imail.iitm.ac.in wrote:
Hi,
I am trying to generate u-boot spl for a custom processor based out of risc-v arch. I have done the defconfig for u-boot proper and is working now. I am able to use that alone with opensbi. I am trying to generate u-boot spl for the same board and I am not able to generate it despite adding the config option in the defconfig for the board.
The options enabled/added for u-boot spl are :
CONFIG_SPL_DM_SPI=y CONFIG_SPL_MMC_SUPPORT=y CONFIG_SPL=y CONFIG_SPL_BUILD=y CONFIG_SPL_SPI_FLASH_SUPPORT=y CONFIG_SPL_SPI_SUPPORT=y CONFIG_SPL_LOAD_FIT_ADDRESS=0x80000000 CONFIG_SPL_CLK=y
You cannot enable CONFIG_SPL=y in the defconfig, if that is what you are doing. It needs to happen in the Kconfig as with other boards.
Check the .config to see what is actually enabled.
Regards, Simon
Regards, Simon