/linux-6.14.4/Documentation/devicetree/bindings/iommu/ |
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 <[email protected]> 11 - Robin Murphy <[email protected]> 18 The SMMU may also raise interrupts in response to various fault 23 pattern: "^iommu@[0-9a-f]*" 26 - description: Qcom SoCs implementing "arm,smmu-v2" 28 - enum: [all …]
|
D | qcom,iommu.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Konrad Dybcio <[email protected]> 13 Qualcomm "B" family devices which are not compatible with arm-smmu have 16 to non-secure vs secure interrupt line. 21 - items: 22 - enum: 23 - qcom,msm8916-iommu 24 - qcom,msm8917-iommu [all …]
|
/linux-6.14.4/drivers/iommu/arm/arm-smmu/ |
D | arm-smmu-qcom.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/adreno-smmu-priv.h> 14 #include "arm-smmu.h" 15 #include "arm-smmu-qcom.h" 17 #define QCOM_DUMMY_VAL -1 20 * SMMU-500 TRM defines BIT(0) as CMTLB (Enable context caching in the 38 { .compatible = "qcom,adreno-gmu", 40 { .compatible = "qcom,adreno-smmu", 44 { .compatible = "qcom,sc7280-mdss", 46 { .compatible = "qcom,sc7280-venus", [all …]
|
D | arm-smmu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * IOMMU API for ARM architected SMMU implementations. 10 * - SMMUv1 and v2 implementations 11 * - Stream-matching and stream-indexing 12 * - v7/v8 long-descriptor format 13 * - Non-secure access to the SMMU 14 * - Context fault reporting 15 * - Extended Stream ID (16 bit) 18 #define pr_fmt(fmt) "arm-smmu: " fmt 24 #include <linux/dma-mapping.h> [all …]
|
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> 33 #include "arm-smmu.h" 84 struct qcom_iommu_dev *qcom_iommu = d->iommu; in to_ctx() 87 return qcom_iommu->ctxs[asid]; in to_ctx() 93 writel_relaxed(val, ctx->base + reg); in iommu_writel() 99 writeq_relaxed(val, ctx->base + reg); in iommu_writeq() [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/xilinx/ |
D | zynqmp.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * (C) Copyright 2014 - 2021, Xilinx, Inc. 15 #include <dt-bindings/dma/xlnx-zynqmp-dpdma.h> 16 #include <dt-bindings/gpio/gpio.h> 17 #include <dt-bindings/interrupt-controller/arm-gic.h> 18 #include <dt-bindings/interrupt-controller/irq.h> 19 #include <dt-bindings/power/xlnx-zynqmp-power.h> 20 #include <dt-bindings/reset/xlnx-zynqmp-resets.h> 21 #include <dt-bindings/thermal/thermal.h> 25 #address-cells = <2>; [all …]
|
/linux-6.14.4/drivers/iommu/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 2 # The IOVA library may also be used by non-IOMMU_API users 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 59 2-level tables with 4KB pages/1MB sections, and contiguous entries 66 Enable self-tests for ARMv7s page table allocator. This performs [all …]
|
/linux-6.14.4/drivers/iommu/arm/arm-smmu-v3/ |
D | arm-smmu-v3-test.c | 1 // SPDX-License-Identifier: GPL-2.0 6 #include <linux/io-pgtable.h> 8 #include "arm-smmu-v3.h" 26 static struct arm_smmu_device smmu = { variable 61 test_writer->test, sizeof(*entry_used_bits) * NUM_ENTRY_QWORDS, in arm_smmu_test_writer_record_syncs() 63 KUNIT_ASSERT_NOT_NULL(test_writer->test, entry_used_bits); in arm_smmu_test_writer_record_syncs() 67 test_writer->entry, in arm_smmu_test_writer_record_syncs() 68 NUM_ENTRY_QWORDS * sizeof(*test_writer->entry), in arm_smmu_test_writer_record_syncs() 71 test_writer->num_syncs += 1; in arm_smmu_test_writer_record_syncs() 72 if (!test_writer->entry[0]) { in arm_smmu_test_writer_record_syncs() [all …]
|
D | arm-smmu-v3.c | 1 // SPDX-License-Identifier: GPL-2.0 19 #include <linux/io-pgtable.h> 27 #include <linux/pci-ats.h> 33 #include "arm-smmu-v3.h" 34 #include "../../dma-iommu.h" 39 "Disable MSI-based polling for CMD_SYNC completion."); 82 { ARM_SMMU_OPT_SKIP_PREFETCH, "hisilicon,broken-prefetch-cmd" }, 83 { ARM_SMMU_OPT_PAGE0_REGS_ONLY, "cavium,cn9900-broken-page1-regspace"}, 111 static void parse_driver_options(struct arm_smmu_device *smmu) in parse_driver_options() argument 116 if (of_property_read_bool(smmu->dev->of_node, in parse_driver_options() [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/qcom/ |
D | msm8998.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/clock/qcom,gcc-msm8998.h> 6 #include <dt-bindings/clock/qcom,gpucc-msm8998.h> 7 #include <dt-bindings/clock/qcom,mmcc-msm8998.h> 8 #include <dt-bindings/clock/qcom,rpmcc.h> 9 #include <dt-bindings/firmware/qcom,scm.h> 10 #include <dt-bindings/power/qcom-rpmpd.h> 11 #include <dt-bindings/gpio/gpio.h> 14 interrupt-parent = <&intc>; [all …]
|
D | sdm630.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 7 #include <dt-bindings/clock/qcom,gcc-sdm660.h> 8 #include <dt-bindings/clock/qcom,gpucc-sdm660.h> 9 #include <dt-bindings/clock/qcom,mmcc-sdm660.h> 10 #include <dt-bindings/clock/qcom,rpmcc.h> 11 #include <dt-bindings/firmware/qcom,scm.h> 12 #include <dt-bindings/interconnect/qcom,sdm660.h> 13 #include <dt-bindings/power/qcom-rpmpd.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/interrupt-controller/arm-gic.h> [all …]
|
D | msm8996.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/clock/qcom,gcc-msm8996.h> 8 #include <dt-bindings/clock/qcom,mmcc-msm8996.h> 9 #include <dt-bindings/clock/qcom,rpmcc.h> 10 #include <dt-bindings/interconnect/qcom,msm8996.h> 11 #include <dt-bindings/interconnect/qcom,msm8996-cbf.h> 12 #include <dt-bindings/firmware/qcom,scm.h> 13 #include <dt-bindings/gpio/gpio.h> [all …]
|
D | sdm670.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <dt-bindings/clock/qcom,dispcc-sdm845.h> 10 #include <dt-bindings/clock/qcom,gcc-sdm845.h> 11 #include <dt-bindings/clock/qcom,gpucc-sdm845.h> 12 #include <dt-bindings/clock/qcom,rpmh.h> 13 #include <dt-bindings/dma/qcom-gpi.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/interconnect/qcom,osm-l3.h> 16 #include <dt-bindings/interconnect/qcom,sdm670-rpmh.h> 17 #include <dt-bindings/interrupt-controller/arm-gic.h> [all …]
|
D | qcm2290.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 8 #include <dt-bindings/clock/qcom,dispcc-qcm2290.h> 9 #include <dt-bindings/clock/qcom,gcc-qcm2290.h> 10 #include <dt-bindings/clock/qcom,qcm2290-gpucc.h> 11 #include <dt-bindings/clock/qcom,rpmcc.h> 12 #include <dt-bindings/dma/qcom-gpi.h> 13 #include <dt-bindings/firmware/qcom,scm.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/interrupt-controller/arm-gic.h> 16 #include <dt-bindings/interconnect/qcom,qcm2290.h> [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/intel/ |
D | socfpga_agilex.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 6 /dts-v1/; 7 #include <dt-bindings/reset/altr,rst-mgr-s10.h> 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/clock/agilex-clock.h> 13 compatible = "intel,socfpga-agilex"; 14 #address-cells = <2>; 15 #size-cells = <2>; 17 reserved-memory { [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/altera/ |
D | socfpga_stratix10.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 6 /dts-v1/; 7 #include <dt-bindings/reset/altr,rst-mgr-s10.h> 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/clock/stratix10-clock.h> 12 compatible = "altr,socfpga-stratix10"; 13 #address-cells = <2>; 14 #size-cells = <2>; 16 reserved-memory { 17 #address-cells = <2>; [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/marvell/ |
D | armada-ap80x.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 9 #include <dt-bindings/thermal/thermal.h> 11 /dts-v1/; 14 #address-cells = <2>; 15 #size-cells = <2>; 25 compatible = "arm,psci-0.2"; 29 reserved-memory { 30 #address-cells = <2>; 31 #size-cells = <2>; [all …]
|
/linux-6.14.4/Documentation/devicetree/bindings/display/msm/ |
D | qcom,mdp5.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 14 - Dmitry Baryshkov <[email protected]> 15 - Rob Clark <[email protected]> 20 - const: qcom,mdp5 22 - items: 23 - enum: 24 - qcom,apq8084-mdp5 25 - qcom,msm8226-mdp5 [all …]
|
D | gmu.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 2 # Copyright 2019-2020, The Linux Foundation, All Rights Reserved 4 --- 7 $schema: http://devicetree.org/meta-schemas/core.yaml# 12 - Rob Clark <[email protected]> 16 to members of the Adreno A6xx GPU family. The GMU provides on-device power 23 - items: 24 - pattern: '^qcom,adreno-gmu-[67][0-9][0-9]\.[0-9]$' 25 - const: qcom,adreno-gmu 26 - items: [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/hisilicon/ |
D | hip07.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 compatible = "hisilicon,hip07-d05"; 12 interrupt-parent = <&gic>; 13 #address-cells = <2>; 14 #size-cells = <2>; 17 compatible = "arm,psci-0.2"; 22 #address-cells = <1>; 23 #size-cells = <0>; 25 cpu-map { [all …]
|
D | hip06.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 compatible = "hisilicon,hip06-d03"; 12 interrupt-parent = <&gic>; 13 #address-cells = <2>; 14 #size-cells = <2>; 17 compatible = "arm,psci-0.2"; 22 #address-cells = <1>; 23 #size-cells = <0>; 25 cpu-map { [all …]
|
/linux-6.14.4/drivers/perf/ |
D | arm_smmuv3_pmu.c | 1 // SPDX-License-Identifier: GPL-2.0 9 * <phys_addr_page> is the physical page address of the SMMU PMCG wrapped 15 * filter_enable - 0 = no filtering, 1 = filtering enabled 16 * filter_span - 0 = exact match, 1 = pattern match 17 * filter_stream_id - pattern to filter against 19 * To match a partial StreamID where the X most-significant bits must match 20 * but the Y least-significant bits might differ, STREAMID is programmed 22 * STREAMID[Y - 1] == 0. 23 * STREAMID[Y - 2:0] == 1 (where Y > 1). 27 * Example: perf stat -e smmuv3_pmcg_ff88840/transaction,filter_enable=1, [all …]
|
/linux-6.14.4/arch/arm64/boot/dts/broadcom/stingray/ |
D | stingray.dtsi | 4 * Copyright(c) 2015-2017 Broadcom. All rights reserved. 33 #include <dt-bindings/interrupt-controller/arm-gic.h> 37 interrupt-parent = <&gic>; 38 #address-cells = <2>; 39 #size-cells = <2>; 42 #address-cells = <2>; 43 #size-cells = <0>; 47 compatible = "arm,cortex-a72"; 49 enable-method = "psci"; 50 next-level-cache = <&CLUSTER0_L2>; [all …]
|
/linux-6.14.4/arch/arm/boot/dts/qcom/ |
D | qcom-sdx55.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 9 #include <dt-bindings/clock/qcom,gcc-sdx55.h> 10 #include <dt-bindings/clock/qcom,rpmh.h> 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/interconnect/qcom,sdx55.h> 13 #include <dt-bindings/interrupt-controller/arm-gic.h> 14 #include <dt-bindings/power/qcom-rpmpd.h> 15 #include <dt-bindings/soc/qcom,rpmh-rsc.h> 18 #address-cells = <1>; 19 #size-cells = <1>; [all …]
|
D | qcom-sdx65.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 9 #include <dt-bindings/clock/qcom,gcc-sdx65.h> 10 #include <dt-bindings/clock/qcom,rpmh.h> 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/power/qcom-rpmpd.h> 14 #include <dt-bindings/soc/qcom,rpmh-rsc.h> 15 #include <dt-bindings/interconnect/qcom,sdx65.h> 18 #address-cells = <1>; 19 #size-cells = <1>; [all …]
|