Home
last modified time | relevance | path

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

12

/linux/Documentation/devicetree/bindings/virtio/
H A 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 …]
H A 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 …]
/linux/include/linux/
H A Dremoteproc.h40 #include <linux/virtio.h>
47 * struct resource_table - firmware resource table header
81 * struct fw_rsc_hdr - firmware resource entry header
95 * enum fw_resource_type - types of resource entries
99 * @RSC_DEVMEM: request to iommu_map a memory-based peripheral.
102 * @RSC_VDEV: declare support for a virtio device, and serve as its
103 * virtio header.
126 #define FW_RSC_ADDR_ANY (-1)
129 * struct fw_rsc_carveout - physically contiguous memory request
133 * @flags: iommu protection flags
[all …]
H A Dvdpa.h1 /* SPDX-License-Identifier: GPL-2.0 */
14 * struct vdpa_callback - vDPA callback definition.
30 * struct vdpa_notification_area - vDPA notification area
40 * struct vdpa_vq_state_split - vDPA split virtqueue state
48 * struct vdpa_vq_state_packed - vDPA packed virtqueue state
71 * struct vdpa_device - representation of a vDPA device
104 * struct vdpa_iova_range - the IOVA range support by the device
124 * struct vdpa_map_file - file area for device memory mapping
125 * @file: vma->vm_file for the mapping
134 * struct vdpa_config_ops - operations for configuring a vDPA device.
[all …]
H A Dmmzone.h1 /* SPDX-License-Identifier: GPL-2.0 */
19 #include <linux/pageblock-flags.h>
20 #include <linux/page-flags-layout.h>
23 #include <linux/page-flags.h>
28 /* Free memory management - zoned buddy allocator. */
80 get_pfnblock_flags_mask(&folio->page, pfn, MIGRATETYPE_MASK))
109 #define MIGRATETYPE_MASK ((1UL << PB_migratetype_bits) - 1)
115 get_pfnblock_flags_mask(&folio->page, folio_pfn(folio), \
200 NR_KERNEL_MISC_RECLAIMABLE, /* reclaimable non-slab kernel pages */
208 NR_SECONDARY_PAGETABLE, /* secondary pagetables, KVM & IOMMU */
[all …]
/linux/drivers/iommu/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
2 # The IOVA library may also be used by non-IOMMU_API users
15 bool "IOMMU Hardware Support"
26 menu "Generic IOMMU Pagetable Support"
40 sizes at both stage-1 and stage-2, as well as address spaces
41 up to 48-bits in size.
47 Enable self-tests for LPAE page table allocator. This performs
48 a series of page-table consistency checks during boot.
57 Enable support for the ARM Short-descriptor pagetable format.
58 This supports 32-bit virtual and physical addresses mapped using
[all …]
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 obj-y += amd/ intel/ arm/ iommufd/
3 obj-$(CONFIG_IOMMU_API) += iommu.o
4 obj-$(CONFIG_IOMMU_API) += iommu-traces.o
5 obj-$(CONFIG_IOMMU_API) += iommu-sysfs.o
6 obj-$(CONFIG_IOMMU_DEBUGFS) += iommu-debugfs.o
7 obj-$(CONFIG_IOMMU_DMA) += dma-iommu.o
8 obj-$(CONFIG_IOMMU_IO_PGTABLE) += io-pgtable.o
9 obj-$(CONFIG_IOMMU_IO_PGTABLE_ARMV7S) += io-pgtable-arm-v7s.o
10 obj-$(CONFIG_IOMMU_IO_PGTABLE_LPAE) += io-pgtable-arm.o
[all …]
H A Dvirtio-iommu.c1 // SPDX-License-Identifier: GPL-2.0
3 * Virtio driver for the paravirtualized IOMMU
11 #include <linux/dma-map-ops.h>
14 #include <linux/iommu.h>
18 #include <linux/virtio.h>
25 #include "dma-iommu.h"
35 struct iommu_device iommu; member
105 struct virtio_iommu_req_tail *tail = buf + len - sizeof(*tail); in viommu_get_req_errno()
107 switch (tail->status) { in viommu_get_req_errno()
111 return -ENOSYS; in viommu_get_req_errno()
[all …]
/linux/Documentation/arch/s390/
H A 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
18 in the channel program directly, i.e. there is no iommu involved.
22 added to an iommu group, so as to make itself able to be managed by the
31 - A good start to know Channel I/O in general:
33 - s390 architecture:
34 s390 Principles of Operation manual (IBM Form. No. SA22-7832)
[all …]
/linux/include/uapi/linux/
H A Dvirtio_ids.h4 * Virtio IDs
32 #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 console */
[all …]
H A Dvirtio_config.h29 /* Virtio devices use a standardized configuration space to define their
49 * Virtio feature bits VIRTIO_TRANSPORT_F_START through
52 * rest are per-device feature bits.
70 * If clear - device has the platform DMA (e.g. IOMMU) bypass quirk feature.
71 * If set - use platform DMA tools to access the memory.
H A Dvirtio_iommu.h1 /* SPDX-License-Identifier: BSD-3-Clause */
3 * Virtio-iommu definition v0.12
147 * Tail follows the variable-length properties array. No padding,
/linux/drivers/vhost/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
7 an IOMMU in software.
14 the host side of a virtio ring.
35 tristate "Host kernel accelerator for virtio net"
53 for use with virtio-scsi guests
56 tristate "vhost virtio-vsock driver"
64 virtio_transport.ko driver loaded to use the virtio-vsock device.
70 tristate "Vhost driver for vDPA-based backend"
77 guest virtio devices with the vDPA-based backends.
83 bool "Cross-endian support for vhost"
[all …]
H A Dvdpa.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2018-2020 Intel Corporation.
20 #include <linux/iommu.h>
77 return as->id; in iotlb_to_asid()
82 struct hlist_head *head = &v->as[asid % VHOST_VDPA_IOTLB_BUCKETS]; in asid_to_as()
86 if (as->id == asid) in asid_to_as()
99 return &as->iotlb; in asid_to_iotlb()
104 struct hlist_head *head = &v->as[asid % VHOST_VDPA_IOTLB_BUCKETS]; in vhost_vdpa_alloc_as()
110 if (asid >= v->vdpa->nas) in vhost_vdpa_alloc_as()
117 vhost_iotlb_init(&as->iotlb, 0, 0); in vhost_vdpa_alloc_as()
[all …]
/linux/Documentation/devicetree/bindings/iommu/
H A Dxen,grant-dma.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/iommu/xen,grant-dma.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Xen specific IOMMU for virtualized devices (e.g. virtio)
10 - Stefano Stabellini <sstabellini@kernel.org>
13 The Xen IOMMU represents the Xen grant table interface. Grant mappings
14 are to be used with devices connected to the Xen IOMMU using the "iommus"
20 const: xen,grant-dma
22 '#iommu-cells':
[all …]
/linux/drivers/remoteproc/
H A Dremoteproc_core.c1 // SPDX-License-Identifier: GPL-2.0-only
8 * Ohad Ben-Cohen <ohad@wizery.com>
12 * Suman Anna <s-anna@ti.com>
26 #include <linux/dma-mapping.h>
32 #include <linux/iommu.h>
78 * This is the IOMMU fault handler we register with the IOMMU API
80 * an IOMMU).
82 * IOMMU core will invoke this handler whenever the remote processor
90 dev_err(dev, "iommu fault: da 0x%lx flags 0x%x\n", iova, flags); in rproc_iommu_fault()
95 * Let the iommu core know we're not really handling this fault; in rproc_iommu_fault()
[all …]
/linux/Documentation/staging/
H A 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
118 name of this remote processor, platform-specific ops handlers,
[all …]
/linux/drivers/vdpa/vdpa_sim/
H A Dvdpa_sim.h1 /* SPDX-License-Identifier: GPL-2.0 */
66 /* virtio config according to device type */
68 struct vhost_iotlb *iommu; member
76 /* spinlock to synchronize iommu table */
84 /* TODO: cross-endian support */
88 (vdpasim->features & (1ULL << VIRTIO_F_VERSION_1)); in vdpasim_is_little_endian()
/linux/drivers/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
6 # Rewritten to use lists instead of if-statements.
9 obj-y += cache/
10 obj-y += irqchip/
11 obj-y += bus/
13 obj-$(CONFIG_GENERIC_PHY) += phy/
16 obj-$(CONFIG_PINCTRL) += pinctrl/
17 obj-$(CONFIG_GPIOLIB) += gpio/
18 obj-y += pwm/
21 obj-y += leds/
[all …]
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
58 # input before char - char/joystick depends on it. As does USB.
130 source "drivers/dma-buf/Kconfig"
140 source "drivers/virtio/Kconfig"
166 source "drivers/iommu/Kconfig"
/linux/Documentation/devicetree/bindings/pci/
H A Dhost-generic-pci.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/pci/host-generic-pci.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Will Deacon <will@kernel.org>
13 Firmware-initialised PCI host controllers and PCI emulations, such as the
14 virtio-pci implementations found in kvmtool and other para-virtualised
21 Configuration Space is assumed to be memory-mapped (as opposed to being
26 For CAM, this 24-bit offset is:
41 - description:
[all …]
/linux/drivers/virtio/
H A Dvirtio_ring.c1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /* Virtio ring implementation.
6 #include <linux/virtio.h>
13 #include <linux/dma-mapping.h>
22 dev_err(&(_vq)->vq.vdev->dev, \
23 "%s:"fmt, (_vq)->vq.name, ##args); \
29 if ((_vq)->in_use) \
31 (_vq)->vq.name, (_vq)->in_use); \
32 (_vq)->in_use = __LINE__; \
35 do { BUG_ON(!(_vq)->in_use); (_vq)->in_use = 0; } while(0)
[all …]
/linux/drivers/vdpa/ifcvf/
H A Difcvf_main.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Intel IFC VF NIC driver for virtio dataplane offloading
24 if (vf->config_cb.callback) in ifcvf_config_changed()
25 return vf->config_cb.callback(vf->config_cb.private); in ifcvf_config_changed()
34 if (vring->cb.callback) in ifcvf_vq_intr_handler()
35 return vring->cb.callback(vring->cb.private); in ifcvf_vq_intr_handler()
46 for (i = 0; i < vf->nr_vring; i++) { in ifcvf_vqs_reused_intr_handler()
47 vring = &vf->vring[i]; in ifcvf_vqs_reused_intr_handler()
48 if (vring->cb.callback) in ifcvf_vqs_reused_intr_handler()
49 vring->cb.callback(vring->cb.private); in ifcvf_vqs_reused_intr_handler()
[all …]
/linux/
H A DMAINTAINERS5 ---------------------------------------------------
21 W: *Web-page* with status/info
23 B: URI for where to file *bugs*. A web-page with detailed bug
28 patches to the given subsystem. This is either an in-tree file,
29 or a URI. See Documentation/maintainer/maintainer-entry-profile.rst
46 N: [^a-z]tegra all files whose path contains tegra
64 ----------------
83 3WARE SAS/SATA-RAID SCSI DRIVERS (3W-XXXX, 3W-9XXX, 3W-SAS)
85 L: linux-scsi@vger.kernel.org
88 F: drivers/scsi/3w-*
[all …]
/linux/Documentation/admin-guide/
H A Dkernel-parameters.txt16 force -- enable ACPI if default was off
17 on -- enable ACPI but allow fallback to DT [arm64,riscv64]
18 off -- disable ACPI if default was on
19 noirq -- do not use ACPI for IRQ routing
20 strict -- Be less tolerant of platforms that are not
22 rsdt -- prefer RSDT over (default) XSDT
23 copy_dsdt -- copy DSDT to memory
24 nospcr -- disable console in ACPI SPCR table as
41 If set to vendor, prefer vendor-specific driver
73 Documentation/firmware-guide/acpi/debug.rst for more information about
[all …]

12