Home
last modified time | relevance | path

Searched +full:virtio +full:- +full:device (Results 1 – 25 of 40) sorted by relevance

12

/Documentation/driver-api/virtio/
Dvirtio.rst1 .. SPDX-License-Identifier: GPL-2.0
6 Virtio on Linux
12 Virtio is an open standard that defines a protocol for communication
13 between drivers and devices of different types, see Chapter 5 ("Device
14 Types") of the virtio spec (`[1]`_). Originally developed as a standard
16 to interface any compliant device (real or emulated) with a driver.
20 devices provided by the hypervisor, which exposes them as virtio devices
24 Device - Driver communication: virtqueues
27 Although the virtio devices are really an abstraction layer in the
29 using a specific transport method -- PCI, MMIO or CCW -- that is
[all …]
Dwriting_virtio_drivers.rst1 .. SPDX-License-Identifier: GPL-2.0
6 Writing Virtio Drivers
13 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
22 and configure the virtqueues for the device according to its spec, the
24 virtqueue definitions in the device. A basic driver skeleton could look
27 #include <linux/virtio.h>
32 /* device private data (one per device) */
[all …]
/Documentation/devicetree/bindings/virtio/
Dvirtio-device.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/virtio/virtio-device.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Virtio device
10 - Viresh Kumar <viresh.kumar@linaro.org>
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.
[all …]
Dmmio.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/virtio/mmio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: virtio memory mapped devices
10 - Jean-Philippe Brucker <jean-philippe@linaro.org>
13 See https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=virtio for
18 const: virtio,mmio
23 dma-coherent: true
28 '#iommu-cells':
[all …]
Dpci-iommu.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/virtio/pci-iommu.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: virtio-iommu device using the virtio-pci transport
10 - Jean-Philippe Brucker <jean-philippe@linaro.org>
13 When virtio-iommu uses the PCI transport, its programming interface is
15 device tree statically describes the relation between IOMMU and DMA
16 masters. Therefore, the PCI root complex that hosts the virtio-iommu
17 contains a child node representing the IOMMU device explicitly.
[all …]
/Documentation/devicetree/bindings/i2c/
Di2c-virtio.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/i2c/i2c-virtio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Virtio I2C Adapter
10 - Viresh Kumar <viresh.kumar@linaro.org>
13 - $ref: /schemas/i2c/i2c-controller.yaml#
14 - $ref: /schemas/virtio/virtio-device.yaml#
17 Virtio I2C device, see /schemas/virtio/virtio-device.yaml for more details.
24 const: virtio,device22
[all …]
/Documentation/devicetree/bindings/gpio/
Dgpio-virtio.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/gpio/gpio-virtio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Virtio GPIO controller
10 - Viresh Kumar <viresh.kumar@linaro.org>
13 - $ref: /schemas/virtio/virtio-device.yaml#
16 Virtio GPIO controller, see /schemas/virtio/virtio-device.yaml for more
24 const: virtio,device29
26 gpio-controller: true
[all …]
/Documentation/filesystems/
Dvirtiofs.rst1 .. SPDX-License-Identifier: GPL-2.0
6 virtiofs: virtio-fs host<->guest shared file system
9 - Copyright (C) 2019 Red Hat, Inc.
14 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
35 .. code-block:: sh
37 guest# mount -t virtiofs myfs /mnt
39 Please see https://virtio-fs.gitlab.io/ for details on how to configure QEMU
43 -------------
[all …]
D9p.rst1 .. SPDX-License-Identifier: GPL-2.0
26 http://xcpu.org/papers/xcpu-talk.pdf
30 http://xcpu.org/papers/cellfs-talk.pdf
33 * VirtFS: A Virtualization Aware File System pass-through
34 https://kernel.org/doc/ols/2010/ols2010-pages-109-120.pdf
41 mount -t 9p 10.10.1.2 /mnt/9
45 mount -t 9p `namespace`/acme /mnt/9 -o trans=unix,uname=$USER
47 For server running on QEMU host with virtio transport::
49 mount -t 9p -o trans=virtio <mount_tag> /mnt/9
52 mount points. Each 9P export is seen by the client as a virtio device with an
[all …]
/Documentation/networking/
Dnet_failover.rst1 .. SPDX-License-Identifier: GPL-2.0
15 The failover netdev acts a master device and controls 2 slave devices. The
17 a passthru/vf device with the same MAC gets registered as 'primary' slave
19 'pci' device. The user accesses the network interface via 'failover' netdev.
28 virtio-net accelerated datapath: STANDBY mode
31 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'/>
49 <alias name='ua-backup0'/>
[all …]
Drepresentors.rst1 .. SPDX-License-Identifier: GPL-2.0
9 used to control internal switching on SmartNICs. For the closely-related port
10 representors on physical (multi-port) switches, see
14 ----------
16 Since the mid-2010s, network cards have started offering more complex
17 virtualisation capabilities than the legacy SR-IOV approach (with its simple
18 MAC/VLAN-based switching model) can support. This led to a desire to offload
19 software-defined networks (such as OpenVSwitch) to these NICs to specify the
24 virtual switches and IOV devices. Just as each physical port of a Linux-
42 -----------
[all …]
/Documentation/staging/
Dremoteproc.rst10 of operating system, whether it's Linux or any other flavor of real-time OS.
12 OMAP4, for example, has dual Cortex-A9, dual Cortex-M3 and a C64x+ DSP.
13 In a typical configuration, the dual cortex-A9 is running Linux in a SMP
20 duplicated. In addition, this framework also adds rpmsg virtio devices
22 platform-specific remoteproc drivers only need to provide a few low-level
24 (for more information about the virtio-based rpmsg bus and its drivers,
26 Registration of other types of virtio devices is now also possible. Firmwares
27 just need to publish what kind of virtio devices do they support, and then
29 existing virtio drivers with remote processor backends at a minimal development
57 without really powering off the device.
[all …]
Drpmsg.rst17 flavor of real-time OS.
19 OMAP4, for example, has dual Cortex-A9, dual Cortex-M3 and a C64x+ DSP.
20 Typically, the dual cortex-A9 is running Linux in a SMP configuration,
25 hardware accelerators, and therefore are often used to offload CPU-intensive
28 These remote processors could also be used to control latency-sensitive
34 hardware accessible only by the remote processor, reserving kernel-controlled
37 Rpmsg is a virtio-based messaging bus that allows kernel drivers to communicate
54 Every rpmsg device is a communication channel with a remote processor (thus
60 a unique rpmsg local address (a 32-bit integer). This way when inbound messages
82 a tx buffer and puts it back on virtio's used descriptor ring),
[all …]
/Documentation/ABI/testing/
Dsysfs-fs-virtiofs3 Contact: virtio-fs@lists.linux.dev
7 What: /sys/fs/virtiofs/<n>/device
9 Contact: virtio-fs@lists.linux.dev
11 Symlink to the virtio device that exports this filesystem.
/Documentation/userspace-api/
Dvduse.rst2 VDUSE - "vDPA Device in Userspace"
5 vDPA (virtio data path acceleration) device is a device that uses a
6 datapath which complies with the virtio specifications with vendor
9 possible to implement software-emulated vDPA devices in userspace. And
10 to make the device emulation more secure, the emulated vDPA device's
14 Note that only virtio block device is supported by VDUSE framework now,
16 the data path is run by an unprivileged user. The support for other device
17 types can be added after the security issue of corresponding device driver
21 ----------------------------
49 .. code-block:: c
[all …]
/Documentation/virt/kvm/s390/
Ds390-diag.rst1 .. SPDX-License-Identifier: GPL-2.0
16 ---------------
22 All DIAGNOSE calls supported by KVM use the RS-a format::
24 --------------------------------------
26 --------------------------------------
29 The second-operand address (obtained by the base/displacement calculation)
30 is not used to address data. Instead, bits 48-63 of this address specify
31 the function code, and bits 0-47 are ignored.
38 DIAGNOSE function code 'X'500' - KVM virtio functions
39 -----------------------------------------------------
[all …]
/Documentation/virt/
Dne_overview.rst1 .. SPDX-License-Identifier: GPL-2.0
29 1. An enclave abstraction process - a user space process running in the primary
33 There is a NE emulated PCI device exposed to the primary VM. The driver for this
34 new PCI device is included in the NE driver.
36 The ioctl logic is mapped to PCI device commands e.g. the NE_START_ENCLAVE ioctl
37 maps to an enclave start PCI command. The PCI device commands are then
42 2. The enclave itself - a VM running on the same host as the primary VM that
58 using virtio-vsock [5]. The primary VM has virtio-pci vsock emulated device,
59 while the enclave VM has a virtio-mmio vsock emulated device. The vsock device
60 uses eventfd for signaling. The enclave VM sees the usual interfaces - local
[all …]
/Documentation/networking/device_drivers/ethernet/amd/
Dpds_vdpa.rst1 .. SPDX-License-Identifier: GPL-2.0+
2 .. note: can be edited and viewed with /usr/bin/formiko-vim
8 AMD/Pensando vDPA VF Device Driver
16 a vDPA device for use by the virtio network stack. It is used with
17 the Pensando Virtual Function devices that offer vDPA and virtio queue
19 and VF PCI handling as well as for device configuration services.
21 Using the device
24 The ``pds_vdpa`` device is enabled via multiple configuration steps and
25 depends on the ``pds_core`` driver to create and enable SR-IOV Virtual
27 in the ``pds_core`` device to create the auxiliary devices used by pds_vdpa.
[all …]
/Documentation/virt/geniezone/
Dintroduction.rst1 .. SPDX-License-Identifier: GPL-2.0
9 GenieZone hypervisor (gzvm) is a type-I hypervisor that supports various virtual
10 machine types and provides security features such as TEE-like scenarios and
15 kernel for vCPU scheduling, memory management, inter-VM communication and virtio
25 - vCPU Management
31 - Memory Management
38 - Virtual Platform
41 guest VM. The platform supports various architecture-defined devices, such as
44 - Inter-VM Communication
47 mechanisms will be provided in the future based on VirtIO-vsock.
[all …]
/Documentation/bpf/
Ds390.rst12 2. One-time setup
27 --variant=minbase \
28 --include=sudo \
30 ./s390-toolchain
31 sudo mount --rbind /dev ./s390-toolchain/dev
32 sudo mount --rbind /proc ./s390-toolchain/proc
33 sudo mount --rbind /sys ./s390-toolchain/sys
34 sudo chroot ./s390-toolchain
38 sudo dpkg --add-architecture s390x
39 sudo apt-get update
[all …]
/Documentation/devicetree/bindings/iommu/
Dpkvm,pviommu.yaml1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
7 - Mostafa Saleh <smostafa@google.org>
11 What distinguishes it from other paravirtual IOMMUs (virtio-iommu)
21 pattern: "^iommu@[0-9a-f]*"
28 '#iommu-cells':
33 by that device into the relevant SMMU.
35 pvIOMMU would assume each device belongs to a different group, to describe
40 - compatible
41 - id
[all …]
/Documentation/arch/s390/
Dvfio-ccw.rst2 vfio-ccw: the basic infrastructure
6 ------------
9 Linux/s390. Motivation for vfio-ccw is to passthrough subchannels to a
16 - Channel programs run asynchronously on a separate (co)processor.
17 - The channel subsystem will access any memory designated by the caller
21 with a mediated device (mdev) implementation. The vfio mdev will be
24 regions to pass the channel programs from the mdev to its parent device
25 (the real I/O subchannel device) to do further address translation and
31 - A good start to know Channel I/O in general:
33 - s390 architecture:
[all …]
/Documentation/devicetree/bindings/remoteproc/
Dti,keystone-rproc.txt5 sub-systems that are used to offload some of the processor-intensive tasks or
8 These processor sub-systems usually contain additional sub-modules like L1
13 DSP Device Node:
15 Each DSP Core sub-system is represented as a single DT node, and should also
18 CorePac) to perform the device management of the remote processor and to
22 --------------------
25 - compatible: Should be one of the following,
26 "ti,k2hk-dsp" for DSPs on Keystone 2 66AK2H/K SoCs
27 "ti,k2l-dsp" for DSPs on Keystone 2 66AK2L SoCs
28 "ti,k2e-dsp" for DSPs on Keystone 2 66AK2E SoCs
[all …]
/Documentation/driver-api/
Dindex.rst1 .. SPDX-License-Identifier: GPL-2.0
8 of device drivers. This document is an only somewhat organized collection
17 of interest to most developers working on device drivers.
23 driver-model/index
33 of interest to most developers working on device drivers.
38 early-userspace/index
40 device-io
42 dma-buf
44 io-mapping
46 uio-howto
[all …]
/Documentation/virt/gunyah/
Dindex.rst1 .. SPDX-License-Identifier: GPL-2.0
10 message-queue
12 Gunyah is a Type-1 hypervisor which is independent of any OS kernel, and runs in
15 security and can support a much smaller trusted computing base than a Type-2
19 https://github.com/quic/gunyah-hypervisor.
23 - Scheduling:
25 A scheduler for virtual CPUs (vCPUs) on physical CPUs enables time-sharing
30 its own. The default is a real-time priority with round-robin scheduler.
31 2. "Proxy" scheduling in which an owner-VM can donate the remainder of its
32 own vCPU's time slice to an owned-VM's vCPU via a hypercall.
[all …]

12