| /linux/Documentation/devicetree/bindings/iommu/ |
| H A D | qcom,iommu.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iommu/qcom,iommu.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm Technologies legacy IOMMU implementations 10 - Konrad Dybcio <konradybcio@kernel.org> 13 Qualcomm "B" family devices which are not compatible with arm-smmu have 14 a similar looking IOMMU, but without access to the global register space 16 to non-secure vs secure interrupt line. 21 - items: [all …]
|
| H A D | sprd,iommu.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/iommu/sprd,iommu.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Unisoc IOMMU and Multi-media MMU 11 - Chunyan Zhang <zhang.lyra@gmail.com> 16 - sprd,iommu-v1 18 "#iommu-cells": 21 Unisoc IOMMUs are all single-master IOMMU devices, therefore no 24 Documentation/devicetree/bindings/iommu/iommu.txt [all …]
|
| H A D | arm,smmu.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/iommu/arm,smmu.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Will Deacon <will@kernel.org> 11 - Robin Murphy <Robin.Murphy@arm.com> 23 pattern: "^iommu@[0-9a-f]*" 26 - description: Qcom SoCs implementing "arm,smmu-v2" 28 - enum: 29 - qcom,msm8996-smmu-v2 [all …]
|
| /linux/arch/arm64/boot/dts/qcom/ |
| H A D | sc8280xp-el2.dtso | 1 // SPDX-License-Identifier: BSD-3-Clause 7 /dts-v1/; 12 zap-shader { 18 * When running under QHEE, this IOMMU is controlled by the firmware, 23 iommu-map = <0 &pcie_smmu 0x20000 0x10000>; 27 iommu-map = <0 &pcie_smmu 0x30000 0x10000>; 31 iommu-map = <0 &pcie_smmu 0x40000 0x10000>; 35 iommu-map = <0 &pcie_smmu 0x50000 0x10000>; 39 iommu-map = <0 &pcie_smmu 0x60000 0x10000>;
|
| H A D | msm8917.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 #include <dt-bindings/clock/qcom,dsi-phy-28nm.h> 4 #include <dt-bindings/clock/qcom,gcc-msm8917.h> 5 #include <dt-bindings/clock/qcom,rpmcc.h> 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/power/qcom-rpmpd.h> 8 #include <dt-bindings/thermal/thermal.h> 11 interrupt-parent = <&intc>; 13 #address-cells = <2>; 14 #size-cells = <2>; [all …]
|
| H A D | msm8976.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 3 * Copyright (c) 2016-2022, AngeloGioacchino Del Regno 9 #include <dt-bindings/clock/qcom,dsi-phy-28nm.h> 10 #include <dt-bindings/clock/qcom,gcc-msm8976.h> 11 #include <dt-bindings/clock/qcom,rpmcc.h> 12 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/interrupt-controller/arm-gic.h> 14 #include <dt-bindings/interrupt-controller/irq.h> 15 #include <dt-bindings/power/qcom-rpmpd.h> 18 interrupt-parent = <&intc>; [all …]
|
| /linux/drivers/iommu/ |
| H A D | mtk_iommu_v1.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * IOMMU API for MTK architected m4u v1 implementations 5 * Copyright (c) 2015-2016 MediaTek Inc. 8 * Based on driver/iommu/mtk_iommu.c 14 #include <linux/dma-mapping.h> 18 #include <linux/iommu.h> 30 #include <dt-bindings/memory/mtk-memory-port.h> 31 #include <dt-bindings/memory/mt2701-larb-port.h> 35 #include <asm/dma-iommu.h> 38 #define arm_iommu_attach_device(...) -ENODEV [all …]
|
| H A D | sprd-iommu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Unisoc IOMMU driver 11 #include <linux/dma-mapping.h> 13 #include <linux/iommu.h> 52 * struct sprd_iommu_device - high-level sprd IOMMU device representation, 55 * @ver: sprd IOMMU IP version 61 * @iommu: IOMMU core representation 62 * @group: IOMMU group 63 * @eb: gate clock which controls IOMMU access 72 struct iommu_device iommu; member [all …]
|
| H A D | rockchip-iommu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * IOMMU API for Rockchip 5 * Module Authors: Simon Xue <xxm@rock-chips.com> 13 #include <linux/dma-mapping.h> 17 #include <linux/iommu.h> 30 #include "iommu-pages.h" 39 #define RK_MMU_INT_CLEAR 0x18 /* Acknowledge and re-arm irq */ 63 #define RK_MMU_CMD_DISABLE_STALL 3 /* Stop stall re-enables paging */ 96 /* list of clocks required by IOMMU */ 117 struct iommu_device iommu; member [all …]
|
| H A D | exynos-iommu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 #include <linux/dma-mapping.h> 15 #include <linux/iommu.h> 25 #include "dma-iommu.h" 26 #include "iommu-pages.h" 41 #define SECT_MASK (~(SECT_SIZE - 1)) 42 #define LPAGE_MASK (~(LPAGE_SIZE - 1)) 43 #define SPAGE_MASK (~(SPAGE_SIZE - 1)) 58 * v1.x - v3.x SYSMMU supports 32bit physical and 32bit virtual address spaces 65 static short PG_ENT_SHIFT = -1; [all …]
|
| /linux/drivers/iommu/arm/arm-smmu/ |
| H A D | qcom_iommu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * IOMMU API for QCOM secure IOMMUs. Somewhat based on arm-smmu.c 13 #include <linux/dma-mapping.h> 17 #include <linux/io-64-nonatomic-hi-lo.h> 18 #include <linux/io-pgtable.h> 19 #include <linux/iommu.h> 33 #include "arm-smmu.h" 47 /* IOMMU core code handle */ 48 struct iommu_device iommu; member 69 struct mutex init_mutex; /* Protects iommu pointer */ [all …]
|
| /linux/arch/arm64/boot/dts/arm/ |
| H A D | juno-base.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include "juno-clocks.dtsi" 3 #include "juno-motherboard.dtsi" 11 compatible = "arm,armv7-timer-mem"; 13 #address-cells = <1>; 14 #size-cells = <1>; 18 frame-number = <1>; 30 #mbox-cells = <1>; 32 clock-names = "apb_pclk"; 35 smmu_gpu: iommu@2b400000 { [all …]
|
| H A D | morello-sdp.dts | 1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 3 * Copyright (c) 2021-2024, Arm Limited. All rights reserved. 6 /dts-v1/; 11 compatible = "arm,morello-sdp", "arm,morello"; 18 stdout-path = "serial0:115200n8"; 21 dpu_aclk: clock-350000000 { 23 compatible = "fixed-clock"; 24 #clock-cells = <0>; 25 clock-frequency = <350000000>; 26 clock-output-names = "aclk"; [all …]
|
| /linux/Documentation/devicetree/bindings/powerpc/fsl/ |
| H A D | pamu.txt | 5 The PAMU is an I/O MMU that provides device-to-memory access control and 10 - compatible : <string> 11 First entry is a version-specific string, such as 12 "fsl,pamu-v1.0". The second is "fsl,pamu". 13 - ranges : <prop-encoded-array> 18 PAMU v1.0, on an SOC that has five PAMU devices, the size 20 - interrupts : <prop-encoded-array> 25 - #address-cells: <u32> 27 - #size-cells : <u32> 31 - reg : <prop-encoded-array> [all …]
|
| H A D | raideng.txt | 3 RAID Engine nodes are defined to describe on-chip RAID accelerators. Each RAID 11 - compatible: Should contain "fsl,raideng-v1.0" as the value 15 - reg: offset and length of the register set for the device 16 - ranges: standard ranges property specifying the translation 22 compatible = "fsl,raideng-v1.0"; 23 #address-cells = <1>; 24 #size-cells = <1>; 30 There must be a sub-node for each job queue present in RAID Engine 31 This node must be a sub-node of the main RAID Engine node 33 - compatible: Should contain "fsl,raideng-v1.0-job-queue" as the value [all …]
|
| H A D | interlaken-lac.txt | 2 Freescale Interlaken Look-Aside Controller Device Bindings 6 - Interlaken Look-Aside Controller (LAC) Node 7 - Example LAC Node 8 - Interlaken Look-Aside Controller (LAC) Software Portal Node 9 - Interlaken Look-Aside Controller (LAC) Software Portal Child Nodes 10 - Example LAC SWP Node with Child Nodes 13 Interlaken Look-Aside Controller (LAC) Node 17 The Interlaken is a narrow, high speed channelized chip-to-chip interface. To 18 facilitate interoperability between a data path device and a look-aside 19 co-processor, the Interlaken Look-Aside protocol is defined for short [all …]
|
| /linux/arch/powerpc/boot/dts/fsl/ |
| H A D | p5020si-post.dtsi | 4 * Copyright 2011 - 2015 Freescale Semiconductor Inc. 36 compatible = "fsl,bman-fbpr"; 37 alloc-ranges = <0 0 0x10000 0>; 41 compatible = "fsl,qman-fqd"; 42 alloc-ranges = <0 0 0x10000 0>; 46 compatible = "fsl,qman-pfdr"; 47 alloc-ranges = <0 0 0x10000 0>; 51 compatible = "fsl,p5020-elbc", "fsl,elbc", "simple-bus"; 53 #address-cells = <2>; 54 #size-cells = <1>; [all …]
|
| H A D | p3041si-post.dtsi | 4 * Copyright 2011 - 2015 Freescale Semiconductor Inc. 36 compatible = "fsl,bman-fbpr"; 37 alloc-ranges = <0 0 0x10 0>; 41 compatible = "fsl,qman-fqd"; 42 alloc-ranges = <0 0 0x10 0>; 46 compatible = "fsl,qman-pfdr"; 47 alloc-ranges = <0 0 0x10 0>; 51 compatible = "fsl,p3041-elbc", "fsl,elbc", "simple-bus"; 53 #address-cells = <2>; 54 #size-cells = <1>; [all …]
|
| H A D | p2041si-post.dtsi | 4 * Copyright 2011 - 2015 Freescale Semiconductor Inc. 36 compatible = "fsl,bman-fbpr"; 37 alloc-ranges = <0 0 0x10 0>; 41 compatible = "fsl,qman-fqd"; 42 alloc-ranges = <0 0 0x10 0>; 46 compatible = "fsl,qman-pfdr"; 47 alloc-ranges = <0 0 0x10 0>; 51 compatible = "fsl,p2041-elbc", "fsl,elbc", "simple-bus"; 53 #address-cells = <2>; 54 #size-cells = <1>; [all …]
|
| H A D | p5040si-post.dtsi | 4 * Copyright 2012 - 2015 Freescale Semiconductor Inc. 36 compatible = "fsl,bman-fbpr"; 37 alloc-ranges = <0 0 0x10000 0>; 41 compatible = "fsl,qman-fqd"; 42 alloc-ranges = <0 0 0x10000 0>; 46 compatible = "fsl,qman-pfdr"; 47 alloc-ranges = <0 0 0x10000 0>; 51 compatible = "fsl,p5040-elbc", "fsl,elbc", "simple-bus"; 53 #address-cells = <2>; 54 #size-cells = <1>; [all …]
|
| H A D | p4080si-post.dtsi | 4 * Copyright 2011 - 2015 Freescale Semiconductor Inc. 36 compatible = "fsl,bman-fbpr"; 37 alloc-ranges = <0 0 0x10 0>; 41 compatible = "fsl,qman-fqd"; 42 alloc-ranges = <0 0 0x10 0>; 46 compatible = "fsl,qman-pfdr"; 47 alloc-ranges = <0 0 0x10 0>; 51 compatible = "fsl,p4080-elbc", "fsl,elbc", "simple-bus"; 53 #address-cells = <2>; 54 #size-cells = <1>; [all …]
|
| H A D | t1023si-post.dtsi | 35 #include <dt-bindings/thermal/thermal.h> 38 compatible = "fsl,bman-fbpr"; 39 alloc-ranges = <0 0 0x10000 0>; 43 compatible = "fsl,qman-fqd"; 44 alloc-ranges = <0 0 0x10000 0>; 48 compatible = "fsl,qman-pfdr"; 49 alloc-ranges = <0 0 0x10000 0>; 53 #address-cells = <2>; 54 #size-cells = <1>; 60 compatible = "fsl,t1023-pcie", "fsl,qoriq-pcie-v2.4", "fsl,qoriq-pcie"; [all …]
|
| /linux/arch/arm/boot/dts/mediatek/ |
| H A D | mt2701.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <dt-bindings/clock/mt2701-clk.h> 9 #include <dt-bindings/phy/phy.h> 10 #include <dt-bindings/power/mt2701-power.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/memory/mt2701-larb-port.h> 14 #include <dt-bindings/reset/mt2701-resets.h> 15 #include "mt2701-pinfunc.h" 18 #address-cells = <2>; [all …]
|
| /linux/drivers/vfio/ |
| H A D | vfio_iommu_type1.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * VFIO: IOMMU DMA mapping support for Type1 IOMMU 12 * We arbitrarily define a Type1 IOMMU as one matching the below code. 13 * It could be called the x86 IOMMU as it's designed for AMD-Vi & Intel 14 * VT-d, but that makes it harder to re-use as theoretically anyone 15 * implementing a similar IOMMU could make use of this. We expect the 16 * IOMMU to support the IOMMU API and have few to no restrictions around 17 * the IOVA range that can be mapped. The Type1 IOMMU is currently 19 * userspace pages pinned into memory. We also assume devices and IOMMU 20 * domains are PCI based as the IOMMU API is still centered around a [all …]
|
| /linux/drivers/net/ethernet/toshiba/ |
| H A D | ps3_gelic_net.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 31 #include <linux/dma-mapping.h> 63 card->irq_mask |= GELIC_CARD_RXINT; in gelic_card_rx_irq_on() 64 gelic_card_set_irq_mask(card, card->irq_mask); in gelic_card_rx_irq_on() 68 card->irq_mask &= ~GELIC_CARD_RXINT; in gelic_card_rx_irq_off() 69 gelic_card_set_irq_mask(card, card->irq_mask); in gelic_card_rx_irq_off() 81 &card->ether_port_status, &v2); in gelic_card_get_ether_port_status() 84 ether_netdev = card->netdev[GELIC_PORT_ETHERNET_0]; in gelic_card_get_ether_port_status() 85 if (card->ether_port_status & GELIC_LV1_ETHER_LINK_UP) in gelic_card_get_ether_port_status() 93 * gelic_descr_get_status -- returns the status of a descriptor [all …]
|