cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Kconfig (5061B)


      1# SPDX-License-Identifier: GPL-2.0-only
      2config VIRTIO
      3	tristate
      4	help
      5	  This option is selected by any driver which implements the virtio
      6	  bus, such as CONFIG_VIRTIO_PCI, CONFIG_VIRTIO_MMIO, CONFIG_RPMSG
      7	  or CONFIG_S390_GUEST.
      8
      9config VIRTIO_PCI_LIB
     10	tristate
     11	help
     12	  Modern PCI device implementation. This module implements the
     13	  basic probe and control for devices which are based on modern
     14	  PCI device with possible vendor specific extensions. Any
     15	  module that selects this module must depend on PCI.
     16
     17config VIRTIO_PCI_LIB_LEGACY
     18	tristate
     19	help
     20	  Legacy PCI device (Virtio PCI Card 0.9.x Draft and older device)
     21	  implementation.
     22	  This module implements the basic probe and control for devices
     23	  which are based on legacy PCI device. Any module that selects this
     24	  module must depend on PCI.
     25
     26menuconfig VIRTIO_MENU
     27	bool "Virtio drivers"
     28	default y
     29
     30if VIRTIO_MENU
     31
     32config VIRTIO_HARDEN_NOTIFICATION
     33        bool "Harden virtio notification"
     34        help
     35          Enable this to harden the device notifications and suppress
     36          those that happen at a time where notifications are illegal.
     37
     38          Experimental: Note that several drivers still have bugs that
     39          may cause crashes or hangs when correct handling of
     40          notifications is enforced; depending on the subset of
     41          drivers and devices you use, this may or may not work.
     42
     43          If unsure, say N.
     44
     45config VIRTIO_PCI
     46	tristate "PCI driver for virtio devices"
     47	depends on PCI
     48	select VIRTIO_PCI_LIB
     49	select VIRTIO
     50	help
     51	  This driver provides support for virtio based paravirtual device
     52	  drivers over PCI.  This requires that your VMM has appropriate PCI
     53	  virtio backends.  Most QEMU based VMMs should support these devices
     54	  (like KVM or Xen).
     55
     56	  If unsure, say M.
     57
     58config VIRTIO_PCI_LEGACY
     59	bool "Support for legacy virtio draft 0.9.X and older devices"
     60	default y
     61	depends on VIRTIO_PCI
     62	select VIRTIO_PCI_LIB_LEGACY
     63	help
     64          Virtio PCI Card 0.9.X Draft (circa 2014) and older device support.
     65
     66	  This option enables building a transitional driver, supporting
     67	  both devices conforming to Virtio 1 specification, and legacy devices.
     68	  If disabled, you get a slightly smaller, non-transitional driver,
     69	  with no legacy compatibility.
     70
     71          So look out into your driveway.  Do you have a flying car?  If
     72          so, you can happily disable this option and virtio will not
     73          break.  Otherwise, leave it set.  Unless you're testing what
     74          life will be like in The Future.
     75
     76	  If unsure, say Y.
     77
     78config VIRTIO_VDPA
     79	tristate "vDPA driver for virtio devices"
     80	depends on VDPA
     81	select VIRTIO
     82	help
     83	  This driver provides support for virtio based paravirtual
     84	  device driver over vDPA bus. For this to be useful, you need
     85	  an appropriate vDPA device implementation that operates on a
     86	  physical device to allow the datapath of virtio to be
     87	  offloaded to hardware.
     88
     89	  If unsure, say M.
     90
     91config VIRTIO_PMEM
     92	tristate "Support for virtio pmem driver"
     93	depends on VIRTIO
     94	depends on LIBNVDIMM
     95	help
     96	  This driver provides access to virtio-pmem devices, storage devices
     97	  that are mapped into the physical address space - similar to NVDIMMs
     98	   - with a virtio-based flushing interface.
     99
    100	  If unsure, say Y.
    101
    102config VIRTIO_BALLOON
    103	tristate "Virtio balloon driver"
    104	depends on VIRTIO
    105	select MEMORY_BALLOON
    106	select PAGE_REPORTING
    107	help
    108	 This driver supports increasing and decreasing the amount
    109	 of memory within a KVM guest.
    110
    111	 If unsure, say M.
    112
    113config VIRTIO_MEM
    114	tristate "Virtio mem driver"
    115	depends on X86_64 || ARM64
    116	depends on VIRTIO
    117	depends on MEMORY_HOTPLUG
    118	depends on MEMORY_HOTREMOVE
    119	depends on CONTIG_ALLOC
    120	depends on EXCLUSIVE_SYSTEM_RAM
    121	help
    122	 This driver provides access to virtio-mem paravirtualized memory
    123	 devices, allowing to hotplug and hotunplug memory.
    124
    125	 This driver was only tested under x86-64 and arm64, but should
    126	 theoretically work on all architectures that support memory hotplug
    127	 and hotremove.
    128
    129	 If unsure, say M.
    130
    131config VIRTIO_INPUT
    132	tristate "Virtio input driver"
    133	depends on VIRTIO
    134	depends on INPUT
    135	help
    136	 This driver supports virtio input devices such as
    137	 keyboards, mice and tablets.
    138
    139	 If unsure, say M.
    140
    141config VIRTIO_MMIO
    142	tristate "Platform bus driver for memory mapped virtio devices"
    143	depends on HAS_IOMEM && HAS_DMA
    144	select VIRTIO
    145	help
    146	 This drivers provides support for memory mapped virtio
    147	 platform device driver.
    148
    149 	 If unsure, say N.
    150
    151config VIRTIO_MMIO_CMDLINE_DEVICES
    152	bool "Memory mapped virtio devices parameter parsing"
    153	depends on VIRTIO_MMIO
    154	help
    155	 Allow virtio-mmio devices instantiation via the kernel command line
    156	 or module parameters. Be aware that using incorrect parameters (base
    157	 address in particular) can crash your system - you have been warned.
    158	 See Documentation/admin-guide/kernel-parameters.rst for details.
    159
    160	 If unsure, say 'N'.
    161
    162config VIRTIO_DMA_SHARED_BUFFER
    163	tristate
    164	depends on DMA_SHARED_BUFFER
    165	help
    166	 This option adds a flavor of dma buffers that are backed by
    167	 virtio resources.
    168
    169endif # VIRTIO_MENU