Home
last modified time | relevance | path

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

12

/freebsd/sys/contrib/device-tree/Bindings/reserved-memory/
H A Dreserved-memory.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/reserved-memory/reserved-memory.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: /reserved-memory Child Node Common
10 - devicetree-spec@vger.kernel.org
13 Reserved memory is specified as a node under the /reserved-memory node. The
19 Each child of the reserved-memory node specifies one or more regions
25 Following the generic-names recommended practice, node names should
26 reflect the purpose of the node (ie. "framebuffer" or "dma-pool").
[all …]
H A Dshared-dma-pool.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: /reserved-memory DMA pool
10 - devicetree-spec@vger.kernel.org
13 - $ref: reserved-memory.yaml
18 - const: shared-dma-pool
25 - const: restricted-dma-pool
30 When using this, the no-map and reusable properties must not
[all …]
/freebsd/sys/contrib/device-tree/Bindings/iommu/
H A Drockchip,iommu.txt1 Rockchip IOMMU
4 A Rockchip DRM iommu translates io virtual addresses to physical addresses for
9 - compatible : Should be "rockchip,iommu"
10 - reg : Address space for the configuration registers
11 - interrupts : Interrupt specifier for the IOMMU instance
12 - interrupt-names : Interrupt name for the IOMMU instance
13 - #iommu-cells : Should be <0>. This indicates the iommu is a
14 "single-master" device, and needs no additional information
16 Documentation/devicetree/bindings/iommu/iommu.txt
17 - clocks : A list of clocks required for the IOMMU to be accessible by
[all …]
H A Drockchip,iommu.yaml1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
4 $id: http://devicetree.org/schemas/iommu/rockchip,iommu.yaml#
5 $schema: http://devicetree.org/meta-schema
[all...]
H A Diommu.txt5 IOMMU device node:
8 An IOMMU can provide the following services:
13 Example: 32-bit DMA to 64-bit physical addresses
15 * Implement scatter-gather at page level granularity so that the device does
19 through the IOMMU and faulting when encountering accesses to unmapped
29 IOMMUs can be single-master or multiple-master. Single-master IOMMU devices
30 typically have a fixed association to the master device, whereas multiple-
31 master IOMMU devices can translate accesses from more than one master.
33 The device tree node of the IOMMU device's parent bus must contain a valid
34 "dma-ranges" property that describes how the physical address space of the
[all …]
/freebsd/sys/contrib/device-tree/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 …]
H A Dlayerscape-pci.txt4 and thus inherits all the common properties defined in snps,dw-pcie.yaml.
7 which is used to describe the PLL settings at the time of chip-reset.
15 - compatible: should contain the platform identifier such as:
17 "fsl,ls1021a-pcie"
18 "fsl,ls2080a-pcie", "fsl,ls2085a-pcie"
19 "fsl,ls2088a-pcie"
20 "fsl,ls1088a-pcie"
21 "fsl,ls1046a-pcie"
22 "fsl,ls1043a-pcie"
23 "fsl,ls1012a-pcie"
[all …]
/freebsd/sys/x86/iommu/
H A Dintel_utils.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
64 #include <dev/iommu/busdma_iommu.h>
65 #include <x86/iommu/intel_reg.h>
66 #include <x86/iommu/x86_iommu.h>
67 #include <x86/iommu/intel_dmar.h>
102 * 6-level paging (DMAR_CAP_SAGAW_6LVL) is not supported on any
103 * current VT-d hardware and its SAGAW field value is listed as
104 * reserved in the VT-d spec. If support is added in the future,
118 if ((DMAR_CAP_SAGAW(unit->hw_cap) & sagaw_bits[i].cap) != 0) in dmar_pglvl_supported()
[all …]
H A Dintel_idpgtbl.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
66 #include <dev/iommu/busdma_iommu.h>
67 #include <x86/iommu/intel_reg.h>
68 #include <x86/iommu/x86_iommu.h>
69 #include <x86/iommu/intel_dmar.h>
90 level, it is non-zero if superpages
104 * - lvl is the level to build;
105 * - idx is the index of the page table page in the pgtbl_obj, which is
107 * - addr is the starting address in the bus address space which is
[all …]
/freebsd/sys/contrib/device-tree/Bindings/display/tegra/
H A Dnvidia,tegra20-host1x.yaml1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
4 $id: http://devicetree.org/schemas/display/tegra/nvidia,tegra20-host1x.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Thierry Reding <thierry.reding@gmail.com>
11 - Jon Hunter <jonathanh@nvidia.com>
13 description: The host1x top-level node defines a number of children, each
19 - enum:
20 - nvidia,tegra20-host1x
21 - nvidia,tegra30-host1x
[all …]
/freebsd/sys/contrib/device-tree/Bindings/crypto/
H A Dhisilicon,hip07-sec.txt4 - compatible: Must contain one of
5 - "hisilicon,hip06-sec"
6 - "hisilicon,hip07-sec"
7 - reg: Memory addresses and lengths of the memory regions through which
11 Regions 2-18 have registers for the 16 individual queues which are isolated
13 - interrupts: Interrupt specifiers.
14 Refer to interrupt-controller/interrupts.txt for generic interrupt client node
19 - dma-coherent: The driver assumes coherent dma is possible.
22 - iommus: The SEC units are behind smmu-v3 iommus.
23 Refer to iommu/arm,smmu-v3.txt for more information.
[all …]
/freebsd/sys/contrib/device-tree/Bindings/dma/
H A Dqcom_hidma_mgmt.txt18 - compatible: "qcom,hidma-mgmt-1.0";
19 - reg: Address range for DMA device
20 - dma-channels: Number of channels supported by this DMA controller.
21 - max-write-burst-bytes: Maximum write burst in bytes that HIDMA can
26 - max-read-burst-bytes: Maximum read burst in bytes that HIDMA can
31 - max-write-transactions: This value is how many times a write burst is
34 - max-read-transactions: This value is how many times a read burst is
36 - channel-reset-timeout-cycles: Channel reset timeout in cycles for this SOC.
41 Sub-nodes:
50 - compatible: must contain "qcom,hidma-1.0" for initial HW or
[all …]
/freebsd/sys/powerpc/ps3/
H A Dps3bus.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
50 #include "ps3-hvcall.h"
128 /* IOMMU interface */
160 if (device_find_child(parent, "ps3bus", -1) == NULL) in ps3bus_identify()
184 resource_list_init(&dinfo->resources); in ps3bus_resources_init()
187 thread = 32 - fls(mfctrl()); in ps3bus_resources_init()
204 lv1_connect_interrupt_event_receive_port(dinfo->bus, in ps3bus_resources_init()
205 dinfo->dev, outlet, irq); in ps3bus_resources_init()
215 irq_type, dinfo->bus, dinfo->dev); in ps3bus_resources_init()
[all …]
/freebsd/sys/amd64/vmm/amd/
H A Damdvi_hw.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
55 #include "io/iommu.h"
63 #define MOD_DEC(a, s, m) (((a) - (s)) % ((m) * (s)))
127 return (pci_cfgregread(softc->pci_seg, PCI_RID2BUS(softc->pci_rid), in amdvi_pci_read()
128 PCI_RID2SLOT(softc->pci_rid), PCI_RID2FUNC(softc->pci_rid), in amdvi_pci_read()
136 * If ATS is absent or disabled, return (-1), otherwise ATS
144 int qlen = -1; in amdvi_find_ats_qlen()
150 return (-1); in amdvi_find_ats_qlen()
158 printf("AMD-Vi: PCI device %d.%d.%d ATS %s qlen=%d\n", in amdvi_find_ats_qlen()
[all …]
/freebsd/sys/dev/iommu/
H A Diommu_gas.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
60 #include <dev/iommu/iommu.h>
61 #include <dev/iommu/iommu_gas.h>
62 #include <dev/iommu/iommu_msi.h>
66 #include <machine/iommu.h>
67 #include <dev/iommu/busdma_iommu.h>
100 SLIST_INIT(&res->pgtbl_free); in iommu_gas_alloc_entry()
102 res->domain = domain; in iommu_gas_alloc_entry()
103 atomic_add_int(&domain->entries_cnt, 1); in iommu_gas_alloc_entry()
[all …]
/freebsd/sys/contrib/device-tree/src/arm64/qcom/
H A Dmsm8939.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2020-2023, Linaro Limited
7 #include <dt-bindings/clock/qcom,gcc-msm8939.h>
8 #include <dt-bindings/clock/qcom,rpmcc.h>
9 #include <dt-bindings/interconnect/qcom,msm8939.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 #include <dt-bindings/power/qcom-rpmpd.h>
12 #include <dt-bindings/reset/qcom,gcc-msm8939.h>
13 #include <dt-bindings/soc/qcom,apr.h>
[all …]
H A Dmsm8916.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved.
6 #include <dt-bindings/arm/coresight-cti-dt.h>
7 #include <dt-bindings/clock/qcom,gcc-msm8916.h>
8 #include <dt-bindings/clock/qcom,rpmcc.h>
9 #include <dt-bindings/interconnect/qcom,msm8916.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 #include <dt-bindings/power/qcom-rpmpd.h>
12 #include <dt-bindings/reset/qcom,gcc-msm8916.h>
13 #include <dt-bindings/soc/qcom,apr.h>
[all …]
/freebsd/sys/contrib/device-tree/src/arm64/nvidia/
H A Dtegra194.dtsi1 // SPDX-License-Identifier: GPL-2.0
2 #include <dt-bindings/clock/tegra194-clock.h>
3 #include <dt-bindings/gpio/tegra194-gpio.h>
4 #include <dt-bindings/interrupt-controller/arm-gi
[all...]
H A Dtegra234.dtsi1 // SPDX-License-Identifier: GPL-2.0
3 #include <dt-bindings/clock/tegra234-clock.h>
4 #include <dt-bindings/gpio/tegra234-gpio.h>
5 #include <dt-bindings/interrupt-controller/arm-gic.h>
6 #include <dt-bindings/mailbox/tegra186-hsp.h>
7 #include <dt-bindings/memory/tegra234-mc.h>
8 #include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h>
9 #include <dt-bindings/power/tegra234-powergate.h>
10 #include <dt-bindings/reset/tegra234-reset.h>
11 #include <dt-bindings/thermal/tegra234-bpmp-thermal.h>
[all …]
H A Dtegra186.dtsi1 // SPDX-License-Identifier: GPL-2.0
2 #include <dt-bindings/clock/tegra186-clock.h>
3 #include <dt-bindings/gpio/tegra186-gpio.h>
4 #include <dt-bindings/interrupt-controller/arm-gi
[all...]
/freebsd/sys/amd64/vmm/intel/
H A Dvtd.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
42 #include "io/iommu.h"
132 nd = VTD_CAP_ND(vtdmap->cap); in vtd_max_domains()
160 /* Skip domain id 0 - it is reserved when Caching Mode field is set */ in domain_id()
163 if (dom->id == id) in domain_id()
189 if (VTD_DRHD_INCLUDE_PCI_ALL(drhd->Flags)) { in vtd_device_scope()
191 * From Intel VT-d arch spec, version 3.0: in vtd_device_scope()
200 end = (char *)drhd + drhd->Header.Length; in vtd_device_scope()
201 remaining = drhd->Header.Length - sizeof(ACPI_DMAR_HARDWARE_UNIT); in vtd_device_scope()
[all …]
/freebsd/sys/dev/virtio/block/
H A Dvirtio_blk.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
208 #define vtblk_modern(_sc) (((_sc)->vtblk_features & VIRTIO_F_VERSION_1) != 0)
219 static int vtblk_writecache_mode = -1;
237 #define VTBLK_MTX(_sc) &(_sc)->vtblk_mtx
253 * Each block request uses at least two segments - one for the header
321 sc->vtblk_de in vtblk_attach()
[all...]
/freebsd/sys/dev/ofw/
H A Dofw_bus_subr.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
4 * Copyright (c) 2001 - 2003 by Thomas Moestl <tmm@FreeBSD.org>.
59 if ((OF_getprop_alloc(node, "name", (void **)&obd->obd_name)) == -1) in ofw_bus_gen_setup_devinfo()
61 OF_getprop_alloc(node, "compatible", (void **)&obd->obd_compat); in ofw_bus_gen_setup_devinfo()
62 OF_getprop_alloc(node, "device_type", (void **)&obd->obd_type); in ofw_bus_gen_setup_devinfo()
63 OF_getprop_alloc(node, "model", (void **)&obd->obd_model); in ofw_bus_gen_setup_devinfo()
64 OF_getprop_alloc(node, "status", (void **)&obd->obd_status); in ofw_bus_gen_setup_devinfo()
65 obd->obd_node = node; in ofw_bus_gen_setup_devinfo()
75 if (obd->obd_compat != NULL) in ofw_bus_gen_destroy_devinfo()
[all …]
/freebsd/sys/kern/
H A Dsubr_bus_dma.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
109 for (; sglist_cnt > 0 && length != 0; sglist_cnt--, list++) { in _bus_dmamap_load_vlist()
113 KASSERT((offset < list->ds_len), in _bus_dmamap_load_vlist()
114 ("Invalid mid-segment offset")); in _bus_dmamap_load_vlist()
115 addr = (char *)(uintptr_t)list->ds_addr + offset; in _bus_dmamap_load_vlist()
116 ds_len = list->ds_len - offset; in _bus_dmamap_load_vlist()
120 length -= ds_len; in _bus_dmamap_load_vlist()
131 * Load a list of physical addresses.
140 for (; sglist_cnt > 0; sglist_cnt--, list++) { in _bus_dmamap_load_plist()
[all …]
/freebsd/sys/dev/netmap/
H A Dnetmap_mem2.c1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
4 * Copyright (C) 2012-2014 Matteo Landi
5 * Copyright (C) 2012-2016 Luigi Rizzo
6 * Copyright (C) 2012-2016 Giuseppe Lettieri
98 /* ---------------------------------------------------*/
103 struct lut_entry *lut; /* virt,phys addresses, objtotal entries */
113 /* ---------------------------------------------------*/
134 #define NMA_LOCK_INIT(n) NM_MTX_INIT((n)->nm_mtx)
135 #define NMA_LOCK_DESTROY(n) NM_MTX_DESTROY((n)->nm_mtx)
[all …]

12