[PATCH 1/1] Added arm64 assembly for examples/api crt0

Brunham, Kalen kalen.brunham at intel.com
Wed May 22 19:22:24 CEST 2024


Hi Tom,

BLK is currently a dependency for EFI_LOADER as shown in the snippet from lib/efi_loader/Kconfig below. Perhaps the question is why EFI_LOADER requires a block device? If I remove this depends on BLK line, then I can enable EFI and successfully simulate the EFI hello world on my test design. 


config EFI_LOADER
	bool "Support running UEFI applications"
	depends on OF_LIBFDT && ( \
		ARM && (SYS_CPU = arm1136 || \
			SYS_CPU = arm1176 || \
			SYS_CPU = armv7   || \
			SYS_CPU = armv8)  || \
		X86 || RISCV || SANDBOX)
	# We need EFI_STUB_64BIT to be set on x86_64 with EFI_STUB
	depends on !EFI_STUB || !X86_64 || EFI_STUB_64BIT
	# We need EFI_STUB_32BIT to be set on x86_32 with EFI_STUB
	depends on !EFI_STUB || !X86 || X86_64 || EFI_STUB_32BIT
	depends on BLK
	depends on !EFI_APP
	default y if !ARM || SYS_CPU = armv7 || SYS_CPU = armv8

Thanks. 

-----Original Message-----
From: Tom Rini <trini at konsulko.com> 
Sent: Wednesday, May 22, 2024 10:39 AM
To: Brunham, Kalen <kalen.brunham at intel.com>
Cc: U-Boot at lists.denx.de; Heinrich Schuchardt <xypron.glpk at gmx.de>
Subject: Re: [PATCH 1/1] Added arm64 assembly for examples/api crt0

On Wed, May 22, 2024 at 01:25:51PM +0000, Brunham, Kalen wrote:

> Hi Tom,
> 
> I'm using a defconfig that does not enable any of the configs listed on the default likes for config BLK (MMC, USB, SCSI, etc.), but I do have DM enabled. I cannot however enable BLK as CONFIG_BLK=y is ignored. My current hypothesis is that BLK is being forced to N by the select BLK in other Kconfig files, but I'm not sure. 
> 
> Here's the Kconfig for drivers/block:
> 
> config BLK
> 	bool # "Support block devices"
> 	depends on DM
> 	default y if MMC || USB || SCSI || NVME || IDE || AHCI || SATA
> 	default y if EFI_MEDIA || VIRTIO_BLK || PVBLOCK
> 
> My current flow is:
> make mrproper
> make socfpga_agilex5_defconfig
> ./scripts/kconfig/merge_config.sh -O ./ ./.config ../../my_uboot_config.txt
> 
> Here my_uboot_config.txt hsd:
> 
> CONFIG_MMC=n
> CONFIG_USB=n
> CONFIG_DM_MMC=n
> CONFIG_SPL_DM_MMC=n
> CONFIG_BLK=y
> CONFIG_EFI_LOADER=y
> CONFIG_CMD_BOOTEFI=y
> CONFIG_EFI_LOADER=y
> CONFIG_CMD_BOOTEFI_HELLO_COMPILE=y
> CONFIG_CMD_BOOTEFI_HELLO=y
> 
> The only way I was able to get BLK set to Y was to add another default like || DM_SPI_FLASH, since I do enable SPI flash in this config. 

And why are you trying to enable BLK without any block devices?

-- 
Tom


More information about the U-Boot mailing list