drivers/virtio/Kconfig

Source file repositories/reference/linux-study-clean/drivers/virtio/Kconfig

File Facts

System
Linux kernel
Corpus path
drivers/virtio/Kconfig
Extension
[no extension]
Size
7584 bytes
Lines
256
Domain
Driver Families
Bucket
drivers/virtio
Inferred role
Driver Families: build/configuration rule
Status
atlas-only

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only
config VIRTIO_ANCHOR
	bool

config VIRTIO
	tristate
	select VIRTIO_ANCHOR
	help
	  This option is selected by any driver which implements the virtio
	  bus, such as CONFIG_VIRTIO_PCI, CONFIG_VIRTIO_MMIO, CONFIG_RPMSG
	  or CONFIG_S390_GUEST.

config VIRTIO_PCI_LIB
	tristate
	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. Any
	  module that selects this module must depend on PCI.

config VIRTIO_PCI_LIB_LEGACY
	tristate
	help
	  Legacy PCI device (Virtio PCI Card 0.9.x Draft and older device)
	  implementation.
	  This module implements the basic probe and control for devices
	  which are based on legacy PCI device. Any module that selects this
	  module must depend on PCI.

menuconfig VIRTIO_MENU
	bool "Virtio drivers"
	default y

if VIRTIO_MENU

config VIRTIO_HARDEN_NOTIFICATION
        bool "Harden virtio notification"
        depends on BROKEN
        help
          Enable this to harden the device notifications and suppress
          those that happen at a time where notifications are illegal.

          Experimental: Note that several drivers still have issues that
          may cause crashes or hangs when correct handling of
          notifications is enforced; depending on the subset of
          drivers and devices you use, this may or may not work.

          If unsure, say N.

config VIRTIO_PCI
	tristate "PCI driver for virtio devices"
	depends on PCI
	select VIRTIO_PCI_LIB
	select VIRTIO
	help
	  This driver provides support for virtio based paravirtual device
	  drivers over PCI.  This requires that your VMM has appropriate PCI
	  virtio backends.  Most QEMU based VMMs should support these devices
	  (like KVM or Xen).

	  If unsure, say M.

config VIRTIO_PCI_ADMIN_LEGACY
	bool
	depends on VIRTIO_PCI && (X86 || COMPILE_TEST)
	default y

config VIRTIO_PCI_LEGACY
	bool "Support for legacy virtio draft 0.9.X and older devices"
	default y

Annotation

Implementation Notes