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 <tr...@konsulko.com> 
Sent: Wednesday, May 22, 2024 10:39 AM
To: Brunham, Kalen <kalen.brun...@intel.com>
Cc: U-Boot@lists.denx.de; Heinrich Schuchardt <xypron.g...@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

Reply via email to