scsi: express dependencies with Kconfig

This automatically removes the SCSI subsystem from the
binary altogether if no controllers are selected.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Yang Zhong <yang.zhong@intel.com>
Message-Id: <20190123065618.3520-34-yang.zhong@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2019-01-23 14:56:07 +08:00
parent a02c0edb35
commit 03b348bdcb
8 changed files with 12 additions and 7 deletions

View File

@ -164,5 +164,4 @@ CONFIG_HIGHBANK=y
CONFIG_MUSICPAL=y CONFIG_MUSICPAL=y
# for realview and versatilepb # for realview and versatilepb
CONFIG_SCSI=y
CONFIG_LSI_SCSI_PCI=y CONFIG_LSI_SCSI_PCI=y

View File

@ -7,7 +7,6 @@ CONFIG_I8259=y
CONFIG_E1000_PCI=y CONFIG_E1000_PCI=y
CONFIG_IDE_CMD646=y CONFIG_IDE_CMD646=y
# CONFIG_IDE_MMIO=y # CONFIG_IDE_MMIO=y
CONFIG_SCSI=y
CONFIG_LSI_SCSI_PCI=y CONFIG_LSI_SCSI_PCI=y
CONFIG_VIRTIO_VGA=y CONFIG_VIRTIO_VGA=y
CONFIG_MC146818RTC=y CONFIG_MC146818RTC=y

View File

@ -4,7 +4,6 @@ CONFIG_ISA_BUS=y
CONFIG_PCI=y CONFIG_PCI=y
CONFIG_PCI_DEVICES=y CONFIG_PCI_DEVICES=y
CONFIG_ESP=y CONFIG_ESP=y
CONFIG_SCSI=y
CONFIG_VGA_ISA=y CONFIG_VGA_ISA=y
CONFIG_VGA_ISA_MM=y CONFIG_VGA_ISA_MM=y
CONFIG_VGA_CIRRUS=y CONFIG_VGA_CIRRUS=y

View File

@ -2,7 +2,6 @@
CONFIG_ISA_BUS=y CONFIG_ISA_BUS=y
CONFIG_ECC=y CONFIG_ECC=y
CONFIG_SCSI=y
CONFIG_ESP=y CONFIG_ESP=y
CONFIG_ESCC=y CONFIG_ESCC=y
CONFIG_M48T59=y CONFIG_M48T59=y

View File

@ -7,6 +7,5 @@ CONFIG_VIRTIO_GPU=y
CONFIG_VIRTIO_INPUT=y CONFIG_VIRTIO_INPUT=y
CONFIG_VIRTIO_NET=y CONFIG_VIRTIO_NET=y
CONFIG_VIRTIO_RNG=y CONFIG_VIRTIO_RNG=y
CONFIG_SCSI=y
CONFIG_VIRTIO_SCSI=y CONFIG_VIRTIO_SCSI=y
CONFIG_VIRTIO_SERIAL=y CONFIG_VIRTIO_SERIAL=y

View File

@ -5,24 +5,29 @@ config LSI_SCSI_PCI
bool bool
default y if PCI_DEVICES default y if PCI_DEVICES
depends on PCI depends on PCI
select SCSI
config MPTSAS_SCSI_PCI config MPTSAS_SCSI_PCI
bool bool
default y if PCI_DEVICES default y if PCI_DEVICES
depends on PCI depends on PCI
select SCSI
config MEGASAS_SCSI_PCI config MEGASAS_SCSI_PCI
bool bool
default y if PCI_DEVICES default y if PCI_DEVICES
depends on PCI depends on PCI
select SCSI
config VMW_PVSCSI_SCSI_PCI config VMW_PVSCSI_SCSI_PCI
bool bool
default y if PCI_DEVICES default y if PCI_DEVICES
depends on PCI depends on PCI
select SCSI
config ESP config ESP
bool bool
select SCSI
config ESP_PCI config ESP_PCI
bool bool
@ -34,11 +39,14 @@ config SPAPR_VSCSI
bool bool
default y default y
depends on PSERIES depends on PSERIES
select SCSI
config VIRTIO_SCSI config VIRTIO_SCSI
bool bool
select SCSI
config VHOST_USER_SCSI config VHOST_USER_SCSI
bool bool
default y # Only PCI devices are provided for now
default y if VIRTIO_PCI
depends on VHOST_USER && LINUX depends on VHOST_USER && LINUX

View File

@ -6,7 +6,7 @@ common-obj-$(CONFIG_MEGASAS_SCSI_PCI) += megasas.o
common-obj-$(CONFIG_VMW_PVSCSI_SCSI_PCI) += vmw_pvscsi.o common-obj-$(CONFIG_VMW_PVSCSI_SCSI_PCI) += vmw_pvscsi.o
common-obj-$(CONFIG_ESP) += esp.o common-obj-$(CONFIG_ESP) += esp.o
common-obj-$(CONFIG_ESP_PCI) += esp-pci.o common-obj-$(CONFIG_ESP_PCI) += esp-pci.o
obj-$(CONFIG_PSERIES) += spapr_vscsi.o obj-$(CONFIG_SPAPR_VSCSI) += spapr_vscsi.o
ifeq ($(CONFIG_VIRTIO_SCSI),y) ifeq ($(CONFIG_VIRTIO_SCSI),y)
obj-y += virtio-scsi.o virtio-scsi-dataplane.o obj-y += virtio-scsi.o virtio-scsi-dataplane.o

View File

@ -52,11 +52,13 @@ config USB_STORAGE_BOT
bool bool
default y default y
depends on USB depends on USB
select SCSI
config USB_STORAGE_UAS config USB_STORAGE_UAS
bool bool
default y default y
depends on USB depends on USB
select SCSI
config USB_AUDIO config USB_AUDIO
bool bool