blk: Make block subsystems select BLK
authorTom Rini <trini@konsulko.com>
Wed, 15 Jan 2025 01:22:11 +0000 (19:22 -0600)
committerTom Rini <trini@konsulko.com>
Tue, 21 Jan 2025 01:26:54 +0000 (19:26 -0600)
The BLK symbol has a few meanings, one of which is that it controls the
driver model portion of a "block device". Rather than having this hidden
symbol be "default y if ..." it should be select'd by the various block
subsystems. Symbols such as PVBLOCK which already select'd BLK are
unchanged".

Reviewed-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
drivers/ata/Kconfig
drivers/block/Kconfig
drivers/mmc/Kconfig
drivers/nvme/Kconfig
drivers/scsi/Kconfig
drivers/usb/Kconfig
drivers/virtio/Kconfig

index 4fbb63a..29ceab8 100644 (file)
@@ -1,6 +1,7 @@
 config AHCI
        bool "Support SATA controllers with driver model"
        depends on DM
+       select BLK
        help
          This enables a uclass for disk controllers in U-Boot. Various driver
          types can use this, such as AHCI/SATA. It does not provide any standard
@@ -9,6 +10,7 @@ config AHCI
 
 config SATA
        bool "Support SATA controllers"
+       select BLK
        help
          This enables support for SATA (Serial Advanced Technology
          Attachment), a serial bus standard for connecting to hard drives and
index 5283d89..cc75bad 100644 (file)
@@ -1,8 +1,5 @@
 config BLK
-       bool # "Support block devices"
-       depends on DM
-       def_bool y if MMC || USB || SCSI || NVME || IDE || AHCI || SATA
-       def_bool y if EFI_MEDIA || VIRTIO_BLK || PVBLOCK
+       bool
        help
          Enable support for block devices, such as SCSI, MMC and USB
          flash sticks. These provide a block-level interface which permits
@@ -100,6 +97,7 @@ config TPL_BLOCK_CACHE
 config EFI_MEDIA
        bool "Support EFI media drivers"
        default y if EFI || SANDBOX
+       select BLK
        help
          Enable this to support media devices on top of UEFI. This enables
          just the uclass so you also need a specific driver to make this do
@@ -139,6 +137,7 @@ endif  # EFI_MEDIA
 
 config IDE
        bool "Support IDE controllers"
+       select BLK
        help
          Enables support for IDE (Integrated Drive Electronics) hard drives.
          This allows access to raw blocks and filesystems on an IDE drive
index 46513db..4827834 100644 (file)
@@ -3,6 +3,7 @@ menu "MMC Host controller Support"
 config MMC
        bool "MMC/SD/SDIO card support"
        default ARM || PPC || SANDBOX
+       select BLK
        select DM_MMC
        help
          This selects MultiMediaCard, Secure Digital and Secure
index 73edb35..d138867 100644 (file)
@@ -4,6 +4,7 @@
 
 config NVME
        bool "NVM Express device support"
+       select BLK
        help
          This option enables support for NVM Express devices.
          It supports basic functions of NVMe (read/write).
index 7e21c4a..fc87d34 100644 (file)
@@ -1,5 +1,6 @@
 config SCSI
        bool "Support SCSI controllers with driver model"
+       select BLK
        help
          This enables support for SCSI (Small Computer System Interface),
          a parallel interface widely used with storage peripherals such as
index 960b6a9..99c6649 100644 (file)
@@ -1,5 +1,6 @@
 menuconfig USB
        bool "USB support"
+       select BLK
        ---help---
          Universal Serial Bus (USB) is a specification for a serial bus
          subsystem which offers higher speeds and more features than the
index 1de6886..512ac37 100644 (file)
@@ -64,6 +64,7 @@ config VIRTIO_NET
 config VIRTIO_BLK
        bool "virtio block driver"
        depends on VIRTIO
+       select BLK
        help
          This is the virtual block driver for virtio. It can be used with
          QEMU based targets.