On Wed, Feb 10, 2021 at 12:44:03PM +0800, Jason Wang wrote: > > On 2021/2/9 下午10:20, Michael S. Tsirkin wrote: > > On Mon, Jan 04, 2021 at 02:55:00PM +0800, Jason Wang wrote: > > > Signed-off-by: Jason Wang <jasow...@redhat.com> > > > --- > > > drivers/virtio/Kconfig | 10 +- > > > drivers/virtio/Makefile | 1 + > > > drivers/virtio/virtio_pci_common.h | 27 +- > > > drivers/virtio/virtio_pci_modern.c | 617 ------------------------- > > > drivers/virtio/virtio_pci_modern_dev.c | 599 ++++++++++++++++++++++++ > > > include/linux/virtio_pci_modern.h | 111 +++++ > > > 6 files changed, 721 insertions(+), 644 deletions(-) > > > create mode 100644 drivers/virtio/virtio_pci_modern_dev.c > > > create mode 100644 include/linux/virtio_pci_modern.h > > > > > > diff --git a/drivers/virtio/Kconfig b/drivers/virtio/Kconfig > > > index 7b41130d3f35..6b9b81f4b8c2 100644 > > > --- a/drivers/virtio/Kconfig > > > +++ b/drivers/virtio/Kconfig > > > @@ -12,6 +12,14 @@ config ARCH_HAS_RESTRICTED_VIRTIO_MEMORY_ACCESS > > > This option is selected if the architecture may need to > > > enforce > > > VIRTIO_F_ACCESS_PLATFORM > > > +config VIRTIO_PCI_MODERN > > > + tristate "Modern Virtio PCI Device" > > > + depends on PCI > > > + help > > > + Modern PCI device implementation. This module implements the > > > + basic probe and control for devices which are based on modern > > > + PCI device with possible vendor specific extensions. > > > + > > > menuconfig VIRTIO_MENU > > > bool "Virtio drivers" > > > default y > > > @@ -20,7 +28,7 @@ if VIRTIO_MENU > > > config VIRTIO_PCI > > > tristate "PCI driver for virtio devices" > > > - depends on PCI > > > + depends on VIRTIO_PCI_MODERN > > > select VIRTIO > > > help > > > This driver provides support for virtio based paravirtual > > > device > > Looks like VIRTIO_PCI_MODERN is actually just a library that > > virtio pci uses. Is that right? > > > Right. > > > > In that case just select it > > automatically, let's not make users enable it manually. > > > I've considered to do this but the problem is that the module depends on PCI > so it can't be selected I think.
Drop the dependency, document that whoever selects it must depend on PCI. > Thanks > > > >