diff mbox series

[PATCHv2,4/6] blk: Make block subsystems select BLK

Message ID 20250115012322.215243-5-trini@konsulko.com
State Accepted
Commit a72fa7f2fee76b65c34ec1299334fef4f98aee50
Delegated to: Tom Rini
Headers show
Series Rework the BLK symbol usage in Kconfig | expand

Commit Message

Tom Rini Jan. 15, 2025, 1:22 a.m. UTC
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.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Peter Robinson <pbrobinson@gmail.com>
---
Changes in v2:
- None.
---
 drivers/ata/Kconfig    | 2 ++
 drivers/block/Kconfig  | 7 +++----
 drivers/mmc/Kconfig    | 1 +
 drivers/nvme/Kconfig   | 1 +
 drivers/scsi/Kconfig   | 1 +
 drivers/usb/Kconfig    | 1 +
 drivers/virtio/Kconfig | 1 +
 7 files changed, 10 insertions(+), 4 deletions(-)

Comments

Quentin Schulz Jan. 15, 2025, 5:51 p.m. UTC | #1
Hi Tom,

On 1/15/25 2:22 AM, Tom Rini wrote:
> 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.
> 

As just replied on v1, I would have liked an explicit mention that yes, 
this diff doesn't include a change to PVBLOCK symbol, because it already 
does the right thing.

> Signed-off-by: Tom Rini <trini@konsulko.com>
> Reviewed-by: Peter Robinson <pbrobinson@gmail.com>

Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>

Thanks!
Quentin
Tom Rini Jan. 15, 2025, 6:28 p.m. UTC | #2
On Wed, Jan 15, 2025 at 06:51:28PM +0100, Quentin Schulz wrote:
> Hi Tom,
> 
> On 1/15/25 2:22 AM, Tom Rini wrote:
> > 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.
> > 
> 
> As just replied on v1, I would have liked an explicit mention that yes, this
> diff doesn't include a change to PVBLOCK symbol, because it already does the
> right thing.

I thought there was another symbol or two that was correct. I'll add
something to the effect of "Symbols such as PVBLOCK which already
select'd BLK are unchanged".
diff mbox series

Patch

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 4fbb63a148ac..29ceab849c02 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -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
diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig
index 5283d8981e09..cc75bad02b8c 100644
--- a/drivers/block/Kconfig
+++ b/drivers/block/Kconfig
@@ -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
diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig
index 46513db0d6e3..4827834b4aab 100644
--- a/drivers/mmc/Kconfig
+++ b/drivers/mmc/Kconfig
@@ -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
diff --git a/drivers/nvme/Kconfig b/drivers/nvme/Kconfig
index 73edb3551606..d138867666bd 100644
--- a/drivers/nvme/Kconfig
+++ b/drivers/nvme/Kconfig
@@ -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).
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index 7e21c4ae2bb8..fc87d34cca39 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -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
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
index 960b6a906ac4..99c6649e4178 100644
--- a/drivers/usb/Kconfig
+++ b/drivers/usb/Kconfig
@@ -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
diff --git a/drivers/virtio/Kconfig b/drivers/virtio/Kconfig
index 1de68867d52e..512ac376f185 100644
--- a/drivers/virtio/Kconfig
+++ b/drivers/virtio/Kconfig
@@ -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.