| /linux/include/uapi/linux/ | 
| H A D | virtio_ids.h | 4  * Virtio IDs32 #define VIRTIO_ID_NET			1 /* virtio net */
 33 #define VIRTIO_ID_BLOCK			2 /* virtio block */
 34 #define VIRTIO_ID_CONSOLE		3 /* virtio console */
 35 #define VIRTIO_ID_RNG			4 /* virtio rng */
 36 #define VIRTIO_ID_BALLOON		5 /* virtio balloon */
 37 #define VIRTIO_ID_IOMEM			6 /* virtio ioMemory */
 38 #define VIRTIO_ID_RPMSG			7 /* virtio remote processor messaging */
 39 #define VIRTIO_ID_SCSI			8 /* virtio scsi */
 40 #define VIRTIO_ID_9P			9 /* 9p virtio consol
 [all...]
 | 
| /linux/drivers/virtio/ | 
| H A D | Kconfig | 5 config VIRTIO  config9 	  This option is selected by any driver which implements the virtio
 24 	  Legacy PCI device (Virtio PCI Card 0.9.x Draft and older device)
 31 	bool "Virtio drivers"
 37         bool "Harden virtio notification"
 51 	tristate "PCI driver for virtio devices"
 54 	select VIRTIO
 56 	  This driver provides support for virtio based paravirtual device
 58 	  virtio backends.  Most QEMU based VMMs should support these devices
 69 	bool "Support for legacy virtio draft 0.9.X and older devices"
 [all …]
 
 | 
| H A D | virtio_pci_legacy_dev.c | 10  * vp_legacy_probe: probe the legacy virtio pci device, note that the12  * @ldev: the legacy virtio-pci device
 33 		 * The virtio ring base address is expressed as a 32-bit PFN,  in vp_legacy_probe()
 43 	rc = pci_request_region(pci_dev, 0, "virtio-pci-legacy");  in vp_legacy_probe()
 66  * vp_legacy_probe: remove and cleanup the legacy virtio pci device
 67  * @ldev: the legacy virtio-pci device
 80  * @ldev: the legacy virtio-pci device
 93  * @ldev: the legacy virtio-pci device
 105  * @ldev: the legacy virtio-pci device
 117  * @ldev: the legacy virtio-pci device
 [all …]
 
 | 
| H A D | virtio_dma_buf.c | 3  * dma-bufs for virtio exported objects12  * virtio_dma_buf_export - Creates a new dma-buf for a virtio exported object
 16  * This wraps dma_buf_export() to allow virtio drivers to create a dma-buf
 17  * for an virtio exported object that can be queried by other virtio drivers
 38  * virtio_dma_buf_attach - mandatory attach callback for virtio dma-bufs
 60  * is_virtio_dma_buf - returns true if the given dma-buf is a virtio dma-buf
 70  * virtio_dma_buf_get_uuid - gets a virtio dma-buf's exported object's uuid
 90 MODULE_DESCRIPTION("dma-bufs for virtio exported objects");
 
 | 
| H A D | virtio_pci_modern_dev.c | 9  * vp_modern_map_capability - map a part of virtio pci capability10  * @mdev: the modern virtio-pci device
 87 			"virtio_pci: map virtio %zu@%u "  in vp_modern_map_capability()
 97 			"virtio_pci: unable to map virtio %u@%u on bar %i\n",  in vp_modern_map_capability()
 217  * vp_modern_probe: probe the modern virtio pci device, note that the
 219  * @mdev: the modern virtio-pci device
 245 			 * virtio device id, same as legacy driver always did.  in vp_modern_probe()
 295 					   "virtio-pci-modern");  in vp_modern_probe()
 373  * vp_modern_remove: remove and cleanup the modern virtio pci device
 374  * @mdev: the modern virtio-pci device
 [all …]
 
 | 
| /linux/tools/virtio/virtio-trace/ | 
| H A D | README | 1 Trace Agent for virtio-trace7  - splice the page from write_pipe to virtio-console without memory copying
 19     write the data to virtio-serial.
 28 Makefile: Makefile of trace agent for virtio-trace
 38 To use this trace agent for virtio-trace, we need to prepare some virtio-serial
 42  virtio-trace uses virtio-serial pipe as trace data paths as to the number
 44 	# mkdir /tmp/virtio-trace/
 45 	# mkfifo /tmp/virtio-trace/trace-path-cpu{0,1,2,...,X}.{in,out}
 46 	# mkfifo /tmp/virtio-trace/agent-ctl-path.{in,out}
 53 2) Set up of virtio-serial pipe in a host
 [all …]
 
 | 
| /linux/Documentation/driver-api/virtio/ | 
| H A D | virtio.rst | 6 Virtio on Linux12 Virtio is an open standard that defines a protocol for communication
 14 Types") of the virtio spec (`[1]`_). Originally developed as a standard
 20 devices provided by the hypervisor, which exposes them as virtio devices
 27 Although the virtio devices are really an abstraction layer in the
 30 orthogonal to the device itself. The virtio spec defines these transport
 35 the hypervisor is done through shared memory (that's what makes virtio
 46 Refer to Chapter 2.5 ("Virtqueues") of the virtio spec (`[1]`_) for the
 47 reference definitions of virtqueues and "Virtqueues and virtio ring: How
 54 ultimately used by virtio drivers:
 [all …]
 
 | 
| H A D | writing_virtio_drivers.rst | 6 Writing Virtio Drivers13 need to hack a new virtio driver or understand the essentials of the
 14 existing ones. See :ref:`Virtio on Linux <virtio>` for a general
 15 overview of virtio.
 21 As a bare minimum, a virtio driver needs to register in the virtio bus
 27 	#include <linux/virtio.h>
 106 	MODULE_DEVICE_TABLE(virtio, id_table);
 107 	MODULE_DESCRIPTION("Dummy virtio driver");
 110 The device id ``VIRTIO_ID_DUMMY`` here is a placeholder, virtio drivers
 113 in the virtio spec before being added to that file.
 [all …]
 
 | 
| /linux/Documentation/devicetree/bindings/virtio/ | 
| H A D | virtio-device.yaml | 4 $id: http://devicetree.org/schemas/virtio/virtio-device.yaml#7 title: Virtio device
 13   These bindings are applicable to virtio devices irrespective of the bus they
 16 # We need a select here so we don't match all nodes with 'virtio,mmio'
 19     pattern: "^virtio,device[0-9a-f]{1,8}$"
 20     description: Virtio device nodes.
 21       "virtio,deviceID", where ID is the virtio device id. The textual
 32     virtio@3000 {
 33         compatible = "virtio,mmio";
 38             compatible = "virtio,device22";
 
 | 
| H A D | mmio.yaml | 4 $id: http://devicetree.org/schemas/virtio/mmio.yaml#7 title: virtio memory mapped devices
 13   See https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=virtio for
 18     const: virtio,mmio
 29     description: Required when the node corresponds to a virtio-iommu device.
 50     virtio@3000 {
 51         compatible = "virtio,mmio";
 60         compatible = "virtio,mmio";
 
 | 
| H A D | pci-iommu.yaml | 4 $id: http://devicetree.org/schemas/virtio/pci-iommu.yaml#7 title: virtio-iommu device using the virtio-pci transport
 13   When virtio-iommu uses the PCI transport, its programming interface is
 16   masters. Therefore, the PCI root complex that hosts the virtio-iommu
 20   virtio-iommu node doesn't have an "iommus" property, and is omitted from
 33           - const: virtio,pci-iommu
 
 | 
| /linux/sound/virtio/ | 
| H A D | virtio_card.h | 3  * virtio-snd: Virtio sound device10 #include <linux/virtio.h>
 17 #define VIRTIO_SND_CARD_DRIVER	"virtio-snd"
 18 #define VIRTIO_SND_CARD_NAME	"VirtIO SoundCard"
 19 #define VIRTIO_SND_PCM_NAME	"VirtIO PCM"
 35  * struct virtio_kctl - VirtIO control element.
 45  * struct virtio_snd - VirtIO sound card device.
 46  * @vdev: Underlying virtio device.
 51  * @pcm_list: VirtIO PCM device list.
 52  * @jacks: VirtIO jacks.
 [all …]
 
 | 
| H A D | virtio_pcm.h | 3  * virtio-snd: Virtio sound device18  * struct virtio_pcm_substream - VirtIO PCM substream.
 19  * @snd: VirtIO sound device.
 23  * @features: Stream VirtIO feature bit map (1 << VIRTIO_SND_PCM_F_XXX).
 68  * struct virtio_pcm_stream - VirtIO PCM stream.
 69  * @substreams: VirtIO substreams belonging to the stream.
 82  * struct virtio_pcm - VirtIO PCM device.
 83  * @list: VirtIO PCM list entry.
 86  * @streams: VirtIO PCM streams (playback and capture).
 
 | 
| H A D | virtio_card.c | 3  * virtio-snd: Virtio sound device50  * @snd: VirtIO sound device.
 51  * @event: VirtIO sound event.
 101  * @snd: VirtIO sound device.
 154  * @snd: VirtIO sound device.
 168  * @snd: VirtIO sound device.
 188  * @snd: VirtIO sound device. in virtsnd_disable_event_vq()
 267  * @vdev: VirtIO parent device. in virtsnd_build_devs()
 298  * @vdev: VirtIO paren in virtsnd_validate()
 [all...]
 | 
| H A D | virtio_jack.c | 3  * virtio-snd: Virtio sound device23  * struct virtio_jack - VirtIO jack.
 26  * @features: Jack virtio feature bit map (1 << VIRTIO_SND_JACK_F_XXX).
 44  * @vjack: VirtIO jack.
 92  * @vjack: VirtIO jack.
 124  * @snd: VirtIO sound device.
 174  * @snd: VirtIO sound device.
 206  * @snd: VirtIO sound device.
 207  * @event: VirtIO sound event.
 
 | 
| /linux/Documentation/devicetree/bindings/i2c/ | 
| H A D | i2c-virtio.yaml | 4 $id: http://devicetree.org/schemas/i2c/i2c-virtio.yaml#7 title: Virtio I2C Adapter
 14   - $ref: /schemas/virtio/virtio-device.yaml#
 17   Virtio I2C device, see /schemas/virtio/virtio-device.yaml for more details.
 24     const: virtio,device22
 33     virtio@3000 {
 34         compatible = "virtio,mmio";
 39             compatible = "virtio,device22";
 
 | 
| /linux/Documentation/devicetree/bindings/gpio/ | 
| H A D | gpio-virtio.yaml | 4 $id: http://devicetree.org/schemas/gpio/gpio-virtio.yaml#7 title: Virtio GPIO controller
 13   - $ref: /schemas/virtio/virtio-device.yaml#
 16   Virtio GPIO controller, see /schemas/virtio/virtio-device.yaml for more
 24     const: virtio,device29
 45     virtio@3000 {
 46         compatible = "virtio,mmio";
 51             compatible = "virtio,device29";
 
 | 
| /linux/drivers/firmware/arm_scmi/transports/ | 
| H A D | Kconfig | 81 	tristate "SCMI transport based on VirtIO"82 	depends on VIRTIO
 86 	  This enables the virtio based transport for SCMI.
 89 	  transport based on VirtIO, answer Y.
 94 	bool "SCMI VirtIO transport Version 1 compliance"
 98 	  This enforces strict compliance with VirtIO Version 1 specification.
 100 	  If you want the ARM SCMI VirtIO transport layer to refuse to work
 101 	  with Legacy VirtIO backends and instead support only VirtIO Version 1
 104 	  If you want instead to support also old Legacy VirtIO backends (like
 105 	  the ones implemented by kvmtool) and let the core Kernel VirtIO layer
 [all …]
 
 | 
| /linux/arch/arc/boot/dts/ | 
| H A D | haps_hs.dts | 69 		virtio0: virtio@f0100000 {70 			compatible = "virtio,mmio";
 75 		virtio1: virtio@f0102000 {
 76 			compatible = "virtio,mmio";
 81 		virtio2: virtio@f0104000 {
 82 			compatible = "virtio,mmio";
 87 		virtio3: virtio@f0106000 {
 88 			compatible = "virtio,mmio";
 93 		virtio4: virtio@f0108000 {
 94 			compatible = "virtio,mmio";
 
 | 
| /linux/drivers/i2c/busses/ | 
| H A D | i2c-virtio.c | 3  * Virtio I2C Bus Driver5  * The Virtio I2C Specification:
 6  * https://raw.githubusercontent.com/oasis-tcs/virtio-spec/master/virtio-i2c.tex
 17 #include <linux/virtio.h>
 23  * struct virtio_i2c - virtio I2C data
 24  * @vdev: virtio device for this controller
 26  * @vq: the virtio virtqueue for communication
 35  * struct virtio_i2c_req - the virtio I2C request structure
 36  * @completion: completion of virtio I2C message
 37  * @out_hdr: the OUT header of the virtio I2C message
 [all …]
 
 | 
| /linux/Documentation/filesystems/ | 
| H A D | virtiofs.rst | 6 virtiofs: virtio-fs host<->guest shared file system14 VIRTIO "virtio-fs" device for guest<->host file system sharing.  It allows a
 24 expose the storage network to the guest.  The virtio-fs device was designed to
 27 Furthermore the virtio-fs device takes advantage of the co-location of the
 39 Please see https://virtio-fs.gitlab.io/ for details on how to configure QEMU
 58 Since the virtio-fs device uses the FUSE protocol for file system requests, the
 62 with the virtio-fs device interface.
 75 the virtio-fs device uses a "hiprio" virtqueue specifically for requests that
 
 | 
| /linux/Documentation/networking/ | 
| H A D | net_failover.rst | 28 virtio-net accelerated datapath: STANDBY mode31 net_failover enables hypervisor controlled accelerated datapath to virtio-net
 35 feature on the virtio-net interface and assign the same MAC address to both
 36 virtio-net and VF interfaces.
 45     <model type='virtio'/>
 59 In this configuration, the first device definition is for the virtio-net
 63 virtio-net device is set to 'down' to ensure that the 'failover' netdev prefers
 64 the VF passthrough device for normal communication. The virtio-net device will
 70 points to the alias name declared for the virtio-net device.
 88 virtio-net interface, and ens11 is the slave 'primary' VF passthrough interface.
 [all …]
 
 | 
| /linux/arch/arm64/boot/dts/arm/ | 
| H A D | rtsm_ve-motherboard-rs2.dtsi | 13 				virtio@140000 {14 					compatible = "virtio,mmio";
 19 				virtio@150000 {
 20 					compatible = "virtio,mmio";
 25 				virtio@200000 {
 26 					compatible = "virtio,mmio";
 
 | 
| /linux/net/9p/ | 
| H A D | trans_virtio.c | 3  * The Virtio 9p transport driver10  *  Based on virtio console driver
 34 #include <linux/virtio.h>
 50  * @vdev: virtio dev associated with this channel
 51  * @vq: virtio queue associated with this channel
 117  * @vq: virtio queue activity was received on
 120  * on the virtio channel - most likely a response to request we
 151 	/* Wakeup if anyone waiting for VirtIO ring space. */ in req_done()
 192 /* We don't currently allow canceling of virtio requests */
 263 	p9_debug(P9_DEBUG_TRANS, "9p debug: virtio reques in p9_virtio_request()
 [all...]
 | 
| /linux/drivers/vhost/ | 
| H A D | Kconfig | 14 	  the host side of a virtio ring.35 	tristate "Host kernel accelerator for virtio net"
 54 	for use with virtio-scsi guests
 57 	tristate "vhost virtio-vsock driver"
 65 	virtio_transport.ko driver loaded to use the virtio-vsock device.
 78 	  guest virtio devices with the vDPA-based backends.
 88 	  ordering from host while using legacy virtio.
 
 |