Home
last modified time | relevance | path

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

123

/Linux-v6.1/drivers/virtio/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
5 config VIRTIO config
9 This option is selected by any driver which implements the virtio
16 Modern PCI device implementation. This module implements the
18 PCI device with possible vendor specific extensions. Any
19 module that selects this module must depend on PCI.
24 Legacy PCI device (Virtio PCI Card 0.9.x Draft and older device)
27 which are based on legacy PCI device. Any module that selects this
28 module must depend on PCI.
31 bool "Virtio drivers"
[all …]
Dvirtio_pci_legacy_dev.c1 // SPDX-License-Identifier: GPL-2.0-or-later
6 #include <linux/pci.h>
10 * vp_legacy_probe: probe the legacy virtio pci device, note that the
11 * caller is required to enable PCI device before calling this function.
12 * @ldev: the legacy virtio-pci device
18 struct pci_dev *pci_dev = ldev->pci_dev; in vp_legacy_probe()
22 if (pci_dev->device < 0x1000 || pci_dev->device > 0x103f) in vp_legacy_probe()
23 return -ENODEV; in vp_legacy_probe()
25 if (pci_dev->revision != VIRTIO_PCI_ABI_VERSION) in vp_legacy_probe()
26 return -ENODEV; in vp_legacy_probe()
[all …]
Dvirtio_pci_modern_dev.c1 // SPDX-License-Identifier: GPL-2.0-or-later
5 #include <linux/pci.h>
9 * vp_modern_map_capability - map a part of virtio pci capability
10 * @mdev: the modern virtio-pci device
26 struct pci_dev *dev = mdev->pci_dev; in vp_modern_map_capability()
40 if (bar >= PCI_STD_NUM_BARS || !(mdev->modern_bars & (1 << bar))) { in vp_modern_map_capability()
41 dev_err(&dev->dev, in vp_modern_map_capability()
47 dev_err(&dev->dev, in vp_modern_map_capability()
53 if (length - start < minlen) { in vp_modern_map_capability()
54 dev_err(&dev->dev, in vp_modern_map_capability()
[all …]
Dvirtio_pci_legacy.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Virtio PCI driver - legacy device support
5 * This module allows virtio devices to be used over a virtual PCI device.
20 /* virtio config->get_features() implementation */
27 return vp_legacy_get_features(&vp_dev->ldev); in vp_get_features()
30 /* virtio config->finalize_features() implementation */
39 BUG_ON((u32)vdev->features != vdev->features); in vp_finalize_features()
42 vp_legacy_set_features(&vp_dev->ldev, vdev->features); in vp_finalize_features()
47 /* virtio config->get() implementation */
52 void __iomem *ioaddr = vp_dev->ldev.ioaddr + in vp_get()
[all …]
Dvirtio_pci_common.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
5 * Virtio PCI driver - APIs for common functionality for all device versions
7 * This module allows virtio devices to be used over a virtual PCI device.
21 #include <linux/pci.h>
24 #include <linux/virtio.h>
40 /* MSI-X vector (or none) */
60 /* array of all queues for house-keeping */
63 /* MSI-X support */
72 /* Vectors allocated, excluding per-vq vectors if any */
90 /* Constants for MSI-X */
[all …]
Dvirtio.c1 // SPDX-License-Identifier: GPL-2.0-only
2 #include <linux/virtio.h>
11 /* Unique numbering for virtio devices. */
18 return sprintf(buf, "0x%04x\n", dev->id.device); in device_show()
26 return sprintf(buf, "0x%04x\n", dev->id.vendor); in vendor_show()
34 return sprintf(buf, "0x%08x\n", dev->config->get_status(dev)); in status_show()
42 return sprintf(buf, "virtio:d%08Xv%08X\n", in modalias_show()
43 dev->id.device, dev->id.vendor); in modalias_show()
56 for (i = 0; i < sizeof(dev->features)*8; i++) in features_show()
77 if (id->device != dev->id.device && id->device != VIRTIO_DEV_ANY_ID) in virtio_id_match()
[all …]
Dvirtio_pci_common.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Virtio PCI driver - common functionality for all device versions
5 * This module allows virtio devices to be used over a virtual PCI device.
24 "Force legacy mode for transitional virtio 1 devices");
33 if (vp_dev->intx_enabled) in vp_synchronize_vectors()
34 synchronize_irq(vp_dev->pci_dev->irq); in vp_synchronize_vectors()
36 for (i = 0; i < vp_dev->msix_vectors; ++i) in vp_synchronize_vectors()
37 synchronize_irq(pci_irq_vector(vp_dev->pci_dev, i)); in vp_synchronize_vectors()
45 iowrite16(vq->index, (void __iomem *)vq->priv); in vp_notify()
54 virtio_config_changed(&vp_dev->vdev); in vp_config_changed()
[all …]
Dvirtio_pci_modern.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Virtio PCI driver - modern (virtio 1.0) device support
5 * This module allows virtio devices to be used over a virtual PCI device.
26 return vp_modern_get_features(&vp_dev->mdev); in vp_get_features()
32 struct pci_dev *pci_dev = vp_dev->pci_dev; in vp_transport_features()
42 /* virtio config->finalize_features() implementation */
46 u64 features = vdev->features; in vp_finalize_features()
55 dev_err(&vdev->dev, "virtio: device uses modern interface " in vp_finalize_features()
57 return -EINVAL; in vp_finalize_features()
60 vp_modern_set_features(&vp_dev->mdev, vdev->features); in vp_finalize_features()
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/virtio/
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
14 discovered dynamically by the PCI probing infrastructure. However the
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
[all …]
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 bindings
10 - Viresh Kumar <viresh.kumar@linaro.org>
13 These bindings are applicable to virtio devices irrespective of the bus they
14 are bound to, like mmio or pci.
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}$"
[all …]
/Linux-v6.1/drivers/vdpa/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
7 datapath which complies with virtio specifications with
51 virtio dataplane traffic to hardware.
70 of virtio net datapath such that descriptors put on the ring will
75 tristate "Virtio PCI bridge vDPA driver"
79 This kernel module bridges virtio PCI device to vDPA bus.
87 virtio 0.9.5 specification.
/Linux-v6.1/drivers/xen/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
32 2) control domain: xl mem-max <target-domain> <maxmem>
35 3) control domain: xl mem-set <target-domain> <memory>
51 …SUBSYSTEM=="memory", ACTION=="add", RUN+="/bin/sh -c '[ -f /sys$devpath/state ] && echo online > /…
145 bool "Add support for dma-buf grant access device driver extension"
150 dma-buf implementation. With this extension grant references to
151 the pages of an imported dma-buf can be exported for other domain
153 converted into a local dma-buf for local export.
156 tristate "User-space grant reference allocator driver"
162 or as part of an inter-domain shared memory channel.
[all …]
/Linux-v6.1/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 …]
/Linux-v6.1/Documentation/networking/
Dnet_failover.rst1 .. SPDX-License-Identifier: GPL-2.0
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'/>
54 <address type='pci' domain='0x0000' bus='0x42' slot='0x02' function='0x5'/>
56 <teaming type='transient' persistent='ua-backup0'/>
[all …]
/Linux-v6.1/drivers/gpu/drm/virtio/
Dvirtgpu_drv.c30 #include <linux/pci.h>
44 static int virtio_gpu_modeset = -1;
51 struct pci_dev *pdev = to_pci_dev(dev->dev); in virtio_gpu_pci_quirk()
52 const char *pname = dev_name(&pdev->dev); in virtio_gpu_pci_quirk()
53 bool vga = (pdev->class >> 8) == PCI_CLASS_DISPLAY_VGA; in virtio_gpu_pci_quirk()
56 DRM_INFO("pci: %s detected at %s\n", in virtio_gpu_pci_quirk()
57 vga ? "virtio-vga" : "virtio-gpu-pci", in virtio_gpu_pci_quirk()
73 if (drm_firmware_drivers_only() && virtio_gpu_modeset == -1) in virtio_gpu_probe()
74 return -EINVAL; in virtio_gpu_probe()
77 return -EINVAL; in virtio_gpu_probe()
[all …]
/Linux-v6.1/tools/virtio/virtio-trace/
DREADME1 Trace Agent for virtio-trace
6 - splice a page of ring-buffer to read_pipe without memory copying
7 - splice the page from write_pipe to virtio-console without memory copying
8 - write trace data to stdout by using -o option
9 - controlled by start/stop orders from a Host
18 5) The read/write threads start to read trace data from ring-buffers and
19 write the data to virtio-serial.
28 Makefile: Makefile of trace agent for virtio-trace
29 trace-agent.c: includes main function, sets up for operating trace agent
30 trace-agent.h: includes all structures and some macros
[all …]
/Linux-v6.1/arch/um/drivers/
Dvirt-pci.c1 // SPDX-License-Identifier: GPL-2.0
7 #include <linux/pci.h>
8 #include <linux/virtio.h>
13 #include <linux/virtio-uml.h>
23 /* for MSI-X we have a 32-bit payload */
84 return -EINVAL; in um_pci_send_cmd()
86 switch (cmd->op) { in um_pci_send_cmd()
90 /* in PCI, writes are posted, so don't wait */ in um_pci_send_cmd()
128 /* add to internal virtio queue */ in um_pci_send_cmd()
129 ret = virtqueue_add_sgs(dev->cmd_vq, sgs_list, in um_pci_send_cmd()
[all …]
DKconfig1 # SPDX-License-Identifier: GPL-2.0
14 The User-Mode Linux environment allows you to create virtual serial
18 See <http://user-mode-linux.sourceforge.net/old/input.html> for more
44 lines to host pseudo-terminals. Access to both traditional
45 pseudo-terminals (/dev/pty*) and pts pseudo-terminals are controlled
55 (/dev/tty*) and the slave side of pseudo-terminals (/dev/ttyp* and
107 traditional pseudo-terminals.
141 While the User-Mode port cannot directly talk to any physical
149 <http://user-mode-linux.sourceforge.net/old/networking.html>.
151 If you'd like to be able to enable networking in the User-Mode
[all …]
/Linux-v6.1/include/uapi/linux/
Dvirtio_pci.h2 * Virtio PCI driver
4 * This module allows virtio devices to be used over a virtual PCI device.
46 /* A 32-bit r/o bitmask of the features supported by the host */
49 /* A 32-bit r/w bitmask of features activated by the guest */
52 /* A 32-bit r/w PFN for the currently selected queue */
55 /* A 16-bit r/o queue size for the currently selected queue */
58 /* A 16-bit r/w queue selector */
61 /* A 16-bit r/w queue notifier */
64 /* An 8-bit device status register. */
67 /* An 8-bit r/o interrupt status register. Reading the value will return the
[all …]
Dvirtio_mmio.h2 * Virtio platform device driver
6 * Based on Virtio PCI driver by Anthony Liguori, copyright IBM Corp. 2007
42 /* Magic value ("virt" string) - Read Only */
45 /* Virtio device version - Read Only */
48 /* Virtio device ID - Read Only */
51 /* Virtio vendor ID - Read Only */
55 * (32 bits per set) - Read Only */
58 /* Device (host) features set selector - Write Only */
62 * (32 bits per set) - Write Only */
65 /* Activated features set selector - Write Only */
[all …]
/Linux-v6.1/tools/
DMakefile1 # SPDX-License-Identifier: GPL-2.0
12 @echo ' acpi - ACPI tools'
13 @echo ' bpf - misc BPF tools'
14 @echo ' cgroup - cgroup tools'
15 @echo ' counter - counter tools'
16 @echo ' cpupower - a tool for all things x86 CPU power'
17 @echo ' debugging - tools for debugging'
18 @echo ' firewire - the userspace part of nosy, an IEEE-1394 traffic sniffer'
19 @echo ' firmware - Firmware tools'
20 @echo ' freefall - laptop accelerometer program for disk protection'
[all …]
/Linux-v6.1/Documentation/translations/zh_CN/virt/
Dne_overview.rst1 .. SPDX-License-Identifier: GPL-2.0
2 .. include:: ../disclaimer-zh_CN.rst
57 enclave通过本地通信通道与主虚拟机进行通信,使用virtio-vsock[5]。主虚拟机有
58 virtio-pci vsock模拟设备,而飞地虚拟机有virtio-mmio vsock模拟设备。vsock
60 virtio-vsock设备获得中断。virtio-mmio设备被放置在典型的4 GiB以下的内存中。
76 连接到主虚拟机的vsock CID和一个预定义的端口--9000,以发送一个心跳值--0xb7。这
83 [1] https://aws.amazon.com/ec2/nitro/nitro-enclaves/
84 [2] https://www.kernel.org/doc/html/latest/admin-guide/mm/hugetlbpage.html
86 [4] https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html
87 [5] https://man7.org/linux/man-pages/man7/vsock.7.html
/Linux-v6.1/drivers/vdpa/ifcvf/
Difcvf_base.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Intel IFC VF NIC driver for virtio dataplane offloading
14 #include <linux/pci.h>
37 #define IFCVF_ERR(pdev, fmt, ...) dev_err(&pdev->dev, fmt, ##__VA_ARGS__)
38 #define IFCVF_DBG(pdev, fmt, ...) dev_dbg(&pdev->dev, fmt, ##__VA_ARGS__)
39 #define IFCVF_INFO(pdev, fmt, ...) dev_info(&pdev->dev, fmt, ##__VA_ARGS__)
42 (&((struct ifcvf_adapter *)adapter)->vf)
72 /* virtio-net or virtio-blk device config size */
102 u8 reserved[IFCVF_LM_CFG_SIZE - 8];
/Linux-v6.1/drivers/vdpa/alibaba/
Deni_vdpa.c1 // SPDX-License-Identifier: GPL-2.0-only
13 #include <linux/pci.h>
15 #include <linux/virtio.h>
25 dev_err(&pdev->dev, "%s"fmt, "eni_vdpa: ", ##__VA_ARGS__)
27 dev_dbg(&pdev->dev, "%s"fmt, "eni_vdpa: ", ##__VA_ARGS__)
29 dev_info(&pdev->dev, "%s"fmt, "eni_vdpa: ", ##__VA_ARGS__)
58 return &eni_vdpa->ldev; in vdpa_to_ldev()
77 ENI_ERR(ldev->pci_dev, in eni_vdpa_set_driver_features()
79 return -EINVAL; in eni_vdpa_set_driver_features()
104 int irq = eni_vdpa->vring[idx].irq; in eni_vdpa_get_vq_irq()
[all …]
/Linux-v6.1/drivers/gpu/drm/tiny/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
15 depends on DRM && PCI && MMU
28 depends on DRM && PCI && MMU
38 https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/
41 - stdvga (DRM_BOCHS, qemu -vga std, default in qemu 2.2+)
42 - qxl (DRM_QXL, qemu -vga qxl, works best with spice)
43 - virtio (DRM_VIRTIO_GPU), qemu -vga virtio)
66 https://github.com/notro/panel-mipi-dbi/wiki.
76 DRM driver for simple platform-provided framebuffers.
95 * YX350HV15-T 3.5" 340x350 TFT (Adafruit 3.5")
[all …]

123