Hi Heinrich, On Wed, 14 Sept 2022 at 01:40, Heinrich Schuchardt <xypron.g...@gmx.de> wrote: > > On 9/14/22 03:42, AKASHI Takahiro wrote: > > On Thu, Aug 11, 2022 at 07:34:48PM -0600, Simon Glass wrote: > >> This option is fact really related to SPL. For U-Boot proper we always use > >> driver model for block devices, so CONFIG_BLK is enabled if block devices > >> are in use. > >> > >> It is only for SPL that we have two cases: > >> > >> - SPL_BLK is enabled, in which case we use driver model and blk-uclass.c > >> - SPL_BLK is not enabled, in which case (if we need block devices) we must > >> use blk_legacy.c > >> > >> Rename the symbol to SPL_LEGACY_BLOCK to make this clear. This is > >> different enough from BLK and SPL_BLK that there should be no confusion. > >> > >> Signed-off-by: Simon Glass <s...@chromium.org> > >> --- > >> > >> (no changes since v1) > >> > >> common/spl/Kconfig | 4 ++-- > >> configs/axm_defconfig | 2 +- > >> configs/bcm968380gerg_ram_defconfig | 2 +- > >> configs/gardena-smart-gateway-mt7688_defconfig | 2 +- > >> configs/nsim_hs38_defconfig | 2 +- > >> configs/qemu-ppce500_defconfig | 2 +- > >> disk/Makefile | 4 ++-- > >> disk/disk-uclass.c | 3 +-- > >> doc/develop/driver-model/migration.rst | 2 +- > >> drivers/Makefile | 2 +- > >> drivers/ata/Kconfig | 2 +- > >> drivers/block/Kconfig | 8 ++++---- > >> drivers/block/Makefile | 2 +- > >> drivers/mmc/Kconfig | 2 +- > >> drivers/nvme/Kconfig | 2 +- > >> drivers/scsi/Kconfig | 2 +- > >> drivers/xen/Kconfig | 2 +- > >> include/blk.h | 2 +- > >> lib/efi_loader/Kconfig | 2 +- > >> 19 files changed, 24 insertions(+), 25 deletions(-) > >> > >> diff --git a/common/spl/Kconfig b/common/spl/Kconfig > >> index ee98810e9e9..4c3e74ae5eb 100644 > >> --- a/common/spl/Kconfig > >> +++ b/common/spl/Kconfig > >> @@ -792,7 +792,7 @@ config SPL_DM_MAILBOX > >> config SPL_MMC > >> bool "Support MMC" > >> depends on MMC > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> help > >> Enable support for MMC (Multimedia Card) within SPL. This enables > >> the MMC protocol implementation and allows any enabled drivers to > >> @@ -1318,7 +1318,7 @@ config SPL_THERMAL > >> > >> config SPL_USB_HOST > >> bool "Support USB host drivers" > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> help > >> Enable access to USB (Universal Serial Bus) host devices so that > >> SPL can load U-Boot from a connected USB peripheral, such as a USB > >> diff --git a/configs/axm_defconfig b/configs/axm_defconfig > >> index a5f60bd8d0c..c42fb37d6c9 100644 > >> --- a/configs/axm_defconfig > >> +++ b/configs/axm_defconfig > >> @@ -80,7 +80,7 @@ CONFIG_SYS_REDUNDAND_ENVIRONMENT=y > >> CONFIG_SYS_RELOC_GD_ENV_ADDR=y > >> CONFIG_SPL_DM=y > >> CONFIG_BLK=y > >> -CONFIG_HAVE_BLOCK_DEVICE=y > >> +CONFIG_SPL_LEGACY_BLOCK=y > >> CONFIG_CLK=y > >> CONFIG_CLK_AT91=y > >> CONFIG_AT91_GPIO=y > >> diff --git a/configs/bcm968380gerg_ram_defconfig > >> b/configs/bcm968380gerg_ram_defconfig > >> index 0475535e991..246add6029c 100644 > >> --- a/configs/bcm968380gerg_ram_defconfig > >> +++ b/configs/bcm968380gerg_ram_defconfig > >> @@ -42,7 +42,7 @@ CONFIG_CMD_NAND=y > >> CONFIG_SYS_RELOC_GD_ENV_ADDR=y > >> # CONFIG_NET is not set > >> # CONFIG_DM_DEVICE_REMOVE is not set > >> -CONFIG_HAVE_BLOCK_DEVICE=y > >> +CONFIG_SPL_LEGACY_BLOCK=y > >> CONFIG_BCM6345_GPIO=y > >> CONFIG_LED=y > >> CONFIG_LED_BCM6328=y > >> diff --git a/configs/gardena-smart-gateway-mt7688_defconfig > >> b/configs/gardena-smart-gateway-mt7688_defconfig > >> index b9ee281be9f..fdfab14d53e 100644 > >> --- a/configs/gardena-smart-gateway-mt7688_defconfig > >> +++ b/configs/gardena-smart-gateway-mt7688_defconfig > >> @@ -78,7 +78,7 @@ CONFIG_VERSION_VARIABLE=y > >> CONFIG_NET_RANDOM_ETHADDR=y > >> CONFIG_SPL_DM=y > >> # CONFIG_DM_DEVICE_REMOVE is not set > >> -CONFIG_HAVE_BLOCK_DEVICE=y > >> +CONFIG_SPL_LEGACY_BLOCK=y > >> CONFIG_BOOTCOUNT_LIMIT=y > >> CONFIG_LED=y > >> CONFIG_LED_BLINK=y > >> diff --git a/configs/nsim_hs38_defconfig b/configs/nsim_hs38_defconfig > >> index 3c3d1812a79..3f23fc4189f 100644 > >> --- a/configs/nsim_hs38_defconfig > >> +++ b/configs/nsim_hs38_defconfig > >> @@ -30,7 +30,7 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y > >> CONFIG_USE_BOOTFILE=y > >> CONFIG_BOOTFILE="uImage" > >> CONFIG_BLK=y > >> -CONFIG_HAVE_BLOCK_DEVICE=y > >> +CONFIG_SPL_LEGACY_BLOCK=y > >> CONFIG_DM_ETH=y > >> CONFIG_DM_SERIAL=y > >> CONFIG_DEBUG_UART_SHIFT=2 > >> diff --git a/configs/qemu-ppce500_defconfig > >> b/configs/qemu-ppce500_defconfig > >> index 034f7e6935b..3241f5520eb 100644 > >> --- a/configs/qemu-ppce500_defconfig > >> +++ b/configs/qemu-ppce500_defconfig > >> @@ -40,7 +40,7 @@ CONFIG_NET_RANDOM_ETHADDR=y > >> CONFIG_DM=y > >> CONFIG_SIMPLE_BUS_CORRECT_RANGE=y > >> CONFIG_BLK=y > >> -CONFIG_HAVE_BLOCK_DEVICE=y > >> +CONFIG_SPL_LEGACY_BLOCK=y > >> CONFIG_LBA48=y > >> CONFIG_CHIP_SELECTS_PER_CTRL=0 > >> CONFIG_MPC8XXX_GPIO=y > >> diff --git a/disk/Makefile b/disk/Makefile > >> index 458e21e3fb7..45588cf66e4 100644 > >> --- a/disk/Makefile > >> +++ b/disk/Makefile > >> @@ -10,8 +10,8 @@ ifdef CONFIG_$(SPL_TPL_)BLK > >> obj-$(CONFIG_$(SPL_TPL_)PARTITIONS) += disk-uclass.o > >> endif > >> > >> -# Must have BLK or HAVE_BLOCK_DEVICE to support partitions > >> -ifneq ($(CONFIG_$(SPL_TPL_)BLK),$(CONFIG_HAVE_BLOCK_DEVICE),) > >> +# Must have BLK or SPL_LEGACY_BLOCK to support partitions > >> +ifneq ($(CONFIG_$(SPL_TPL_)BLK),$(CONFIG_SPL_LEGACY_BLOCK),) > >> obj-$(CONFIG_$(SPL_TPL_)MAC_PARTITION) += part_mac.o > >> obj-$(CONFIG_$(SPL_TPL_)DOS_PARTITION) += part_dos.o > >> obj-$(CONFIG_$(SPL_TPL_)ISO_PARTITION) += part_iso.o > >> diff --git a/disk/disk-uclass.c b/disk/disk-uclass.c > >> index f3fb942a6b9..9351a5cfa68 100644 > >> --- a/disk/disk-uclass.c > >> +++ b/disk/disk-uclass.c > >> @@ -27,8 +27,7 @@ int part_create_block_devices(struct udevice *blk_dev) > >> struct udevice *dev; > >> int ret; > >> > >> - if (!CONFIG_IS_ENABLED(PARTITIONS) || > >> - !CONFIG_IS_ENABLED(HAVE_BLOCK_DEVICE)) > >> + if (!CONFIG_IS_ENABLED(PARTITIONS) || !blk_enabled()) > >> return 0; > >> > >> if (device_get_uclass_id(blk_dev) != UCLASS_BLK) > >> diff --git a/doc/develop/driver-model/migration.rst > >> b/doc/develop/driver-model/migration.rst > >> index 5a604369258..742fea5515c 100644 > >> --- a/doc/develop/driver-model/migration.rst > >> +++ b/doc/develop/driver-model/migration.rst > >> @@ -57,7 +57,7 @@ In concert with maintainers migrating their block device > >> usage to the > >> appropriate DM driver, CONFIG_BLK needs to be set as well. The final > >> deadline > >> here coincides with the final deadline for migration of the various block > >> subsystems. At this point we will be able to audit and correct the > >> logic in > >> -Kconfig around using CONFIG_PARTITIONS and CONFIG_HAVE_BLOCK_DEVICE and > >> make > >> +Kconfig around using CONFIG_PARTITIONS and CONFIG_SPL_LEGACY_BLOCK and > >> make > >> use of CONFIG_BLK / CONFIG_SPL_BLK as needed. > >> > >> CONFIG_DM_SPI / CONFIG_DM_SPI_FLASH > >> diff --git a/drivers/Makefile b/drivers/Makefile > >> index f2154e15d6a..9d9f69a3c9a 100644 > >> --- a/drivers/Makefile > >> +++ b/drivers/Makefile > >> @@ -59,7 +59,7 @@ obj-$(CONFIG_SPL_WATCHDOG) += watchdog/ > >> obj-$(CONFIG_SPL_USB_HOST) += usb/host/ > >> obj-$(CONFIG_OMAP_USB_PHY) += usb/phy/ > >> obj-$(CONFIG_SPL_SATA) += ata/ scsi/ > >> -obj-$(CONFIG_HAVE_BLOCK_DEVICE) += block/ > >> +obj-$(CONFIG_SPL_LEGACY_BLOCK) += block/ > >> obj-$(CONFIG_SPL_BLK) += block/ > >> obj-$(CONFIG_SPL_THERMAL) += thermal/ > >> > >> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig > >> index 70e6bd321a6..c3f2ac058a3 100644 > >> --- a/drivers/ata/Kconfig > >> +++ b/drivers/ata/Kconfig > >> @@ -9,7 +9,7 @@ config AHCI > >> > >> config SATA > >> bool "Support SATA controllers" > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> help > >> This enables support for SATA (Serial Advanced Technology > >> Attachment), a serial bus standard for connecting to hard drives and > >> diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig > >> index df242df9c5f..5a0c434058a 100644 > >> --- a/drivers/block/Kconfig > >> +++ b/drivers/block/Kconfig > >> @@ -11,7 +11,7 @@ config BLK > >> be partitioned into several areas, called 'partitions' in U-Boot. > >> A filesystem can be placed in each partition. > >> > >> -config HAVE_BLOCK_DEVICE > >> +config SPL_LEGACY_BLOCK > >> bool "Enable Legacy Block Device" > >> help > >> Some devices require block support whether or not DM is enabled > >> @@ -109,7 +109,7 @@ endif # EFI_MEDIA > >> > >> config IDE > >> bool "Support IDE controllers" > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> help > >> Enables support for IDE (Integrated Drive Electronics) hard drives. > >> This allows access to raw blocks and filesystems on an IDE drive > >> @@ -222,7 +222,7 @@ endif # IDE > >> > >> config LBA48 > >> bool "Enable LBA support for disks larger than 137GB" > >> - depends on HAVE_BLOCK_DEVICE > >> + depends on SPL_LEGACY_BLOCK > >> help > >> Set this to enable support for disks larger than 137GB. > >> Also look at CONFIG_SYS_64BIT_LBA. Without both of these, LBA48 > >> @@ -231,7 +231,7 @@ config LBA48 > >> > >> config SYS_64BIT_LBA > >> bool "Enable 64bit number of blocks on a block device" > >> - depends on HAVE_BLOCK_DEVICE > >> + depends on SPL_LEGACY_BLOCK > >> help > >> Make the block subsystem use 64bit sector addresses, rather than the > >> default of 32bit. > >> diff --git a/drivers/block/Makefile b/drivers/block/Makefile > >> index b221a7c6eea..f48d3e12140 100644 > >> --- a/drivers/block/Makefile > >> +++ b/drivers/block/Makefile > >> @@ -6,7 +6,7 @@ > >> obj-$(CONFIG_$(SPL_)BLK) += blk-uclass.o > >> > >> ifndef CONFIG_$(SPL_)BLK > >> -obj-$(CONFIG_HAVE_BLOCK_DEVICE) += blk_legacy.o > >> +obj-$(CONFIG_SPL_LEGACY_BLOCK) += blk_legacy.o > >> endif > >> > >> ifndef CONFIG_SPL_BUILD > >> diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig > >> index c5e1a1b0981..d45ad1a541d 100644 > >> --- a/drivers/mmc/Kconfig > >> +++ b/drivers/mmc/Kconfig > >> @@ -3,7 +3,7 @@ menu "MMC Host controller Support" > >> config MMC > >> bool "MMC/SD/SDIO card support" > >> default ARM || PPC || SANDBOX > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> select DM_MMC if DM > >> help > >> This selects MultiMediaCard, Secure Digital and Secure > >> diff --git a/drivers/nvme/Kconfig b/drivers/nvme/Kconfig > >> index 2a103ab5ed7..7b6d54615f8 100644 > >> --- a/drivers/nvme/Kconfig > >> +++ b/drivers/nvme/Kconfig > >> @@ -4,7 +4,7 @@ > >> > >> config NVME > >> bool "NVM Express device support" > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> help > >> This option enables support for NVM Express devices. > >> It supports basic functions of NVMe (read/write). > >> diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig > >> index 19872fb52d8..4d643816fcc 100644 > >> --- a/drivers/scsi/Kconfig > >> +++ b/drivers/scsi/Kconfig > >> @@ -1,6 +1,6 @@ > >> config SCSI > >> bool "Support SCSI controllers" > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> help > >> This enables support for SCSI (Small Computer System Interface), > >> a parallel interface widely used with storage peripherals such as > >> diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig > >> index 6ad2a936682..20db2c53065 100644 > >> --- a/drivers/xen/Kconfig > >> +++ b/drivers/xen/Kconfig > >> @@ -2,7 +2,7 @@ config PVBLOCK > >> bool "Xen para-virtualized block device" > >> depends on DM > >> select BLK > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > >> help > >> This driver implements the front-end of the Xen virtual > >> block device driver. It communicates with a back-end driver > >> diff --git a/include/blk.h b/include/blk.h > >> index 332481a90b8..5bdffe74015 100644 > >> --- a/include/blk.h > >> +++ b/include/blk.h > >> @@ -23,7 +23,7 @@ struct udevice; > >> > >> static inline bool blk_enabled(void) > >> { > >> - return CONFIG_IS_ENABLED(BLK) || IS_ENABLED(CONFIG_HAVE_BLOCK_DEVICE); > >> + return CONFIG_IS_ENABLED(BLK) || IS_ENABLED(CONFIG_SPL_LEGACY_BLOCK); > >> } > >> > >> /* Interface types: */ > >> diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig > >> index e3f2402d0e8..5feafc16820 100644 > >> --- a/lib/efi_loader/Kconfig > >> +++ b/lib/efi_loader/Kconfig > >> @@ -20,7 +20,7 @@ config EFI_LOADER > >> select EVENT_DYNAMIC > >> select LIB_UUID > >> imply PARTITION_UUIDS > >> - select HAVE_BLOCK_DEVICE > >> + select SPL_LEGACY_BLOCK > > > > I don't think we need this "select" as efi_disk implementation > > now fully relies on U-Boot dm. > > (Kconfig has "depends on BLK".) > > > > -Takahiro Akashi > > The UEFI sub-system does not exist in SPL. Hence there should be no SPL > configuration flag affected.
Yes, but note this patch is just about making sure things are exactly as they are now, just with a rename. A later patches removes this from here. Regards, Simon