/Linux-v6.1/Documentation/devicetree/bindings/iommu/ |
D | qcom,iommu.txt | 3 Qualcomm "B" family devices which are not compatible with arm-smmu have 4 a similar looking IOMMU but without access to the global register space, 6 to non-secure vs secure interrupt line. 10 - compatible : Should be one of: 12 "qcom,msm8916-iommu" 14 Followed by "qcom,msm-iommu-v1". 16 - clock-names : Should be a pair of "iface" (required for IOMMUs 17 register group access) and "bus" (required for 18 the IOMMUs underlying bus access). 20 - clocks : Phandles for respective clocks described by [all …]
|
D | arm,smmu.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 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 30 - qcom,msm8998-smmu-v2 [all …]
|
D | msm,iommu-v0.txt | 5 of the CPU, each connected to the IOMMU through a port called micro-TLB. 9 - compatible: Must contain "qcom,apq8064-iommu". 10 - reg: Base address and size of the IOMMU registers. 11 - interrupts: Specifiers for the MMU fault interrupts. For instances that 12 support secure mode two interrupts must be specified, for non-secure and 13 secure mode, in that order. For instances that don't support secure mode a 15 - #iommu-cells: The number of cells needed to specify the stream id. This 17 - qcom,ncb: The total number of context banks in the IOMMU. 18 - clocks : List of clocks to be used during SMMU register access. See 19 Documentation/devicetree/bindings/clock/clock-bindings.txt [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/arm/tegra/ |
D | nvidia,tegra194-cbb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: "http://devicetree.org/schemas/arm/tegra/nvidia,tegra194-cbb.yaml#" 5 $schema: "http://devicetree.org/meta-schemas/core.yaml#" 10 - Sumit Gupta <sumitg@nvidia.com> 15 multiple hierarchical sub-NOCs (Network-on-Chip) and connects various 20 "AON-NOC, SCE-NOC, RCE-NOC, BPMP-NOC, CV-NOC" and "CBB Central NOC" 23 By default, the access issuing initiator is informed about the error 28 - For CCPLEX (CPU Complex) initiator, the driver sets ERD bit. So, the 31 - For other initiators, the ERD is disabled. So, the access issuing [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/nvmem/ |
D | st,stm32-romem.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/nvmem/st,stm32-romem.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 Factory-programmed data bindings 10 This represents STM32 Factory-programmed read only non-volatile area: locked 11 flash, OTP, read-only HW regs... This contains various information such as: 16 - Fabrice Gasnier <fabrice.gasnier@foss.st.com> 19 - $ref: "nvmem.yaml#" 24 - st,stm32f4-otp [all …]
|
/Linux-v6.1/drivers/iommu/arm/arm-smmu/ |
D | arm-smmu-impl.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 #define pr_fmt(fmt) "arm-smmu: " fmt 10 #include "arm-smmu.h" 44 /* Since we don't care for sGFAR, we can do without 64-bit accessors */ 65 cs->id_base = atomic_fetch_add(smmu->num_context_banks, &context_count); in cavium_cfg_probe() 66 dev_notice(smmu->dev, "\tenabling workaround for Cavium erratum 27704\n"); in cavium_cfg_probe() 74 struct cavium_smmu *cs = container_of(smmu_domain->smmu, in cavium_init_context() 77 if (smmu_domain->stage == ARM_SMMU_DOMAIN_S2) in cavium_init_context() 78 smmu_domain->cfg.vmid += cs->id_base; in cavium_init_context() 80 smmu_domain->cfg.asid += cs->id_base; in cavium_init_context() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/interrupt-controller/ |
D | marvell,icu.txt | 2 -------------------------------- 5 responsible for collecting all wired-interrupt sources in the CP and 8 These messages will access a different GIC memory area depending on 13 - compatible: Should be "marvell,cp110-icu" 15 - reg: Should contain ICU registers location and length. 22 - compatible: Should be one of: 23 * "marvell,cp110-icu-nsr" 24 * "marvell,cp110-icu-sr" 25 * "marvell,cp110-icu-sei" 26 * "marvell,cp110-icu-rei" [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/timer/ |
D | ti,timer-dm.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/timer/ti,timer-dm.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: TI dual-mode timer 10 - Tony Lindgren <tony@atomide.com> 13 The TI dual-mode timer is a general purpose timer with PWM capabilities. 18 - items: 19 - enum: 20 - ti,am335x-timer [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/arm/ |
D | pmu.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Mark Rutland <mark.rutland@arm.com> 11 - Will Deacon <will.deacon@arm.com> 16 representation in the device tree should be done as under:- 21 - enum: 22 - apm,potenza-pmu 23 - apple,firestorm-pmu 24 - apple,icestorm-pmu [all …]
|
D | arm,cci-400.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/arm/arm,cci-400.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> 13 ARM multi-cluster systems maintain intra-cluster coherency through a cache 24 pattern: "^cci(@[0-9a-f]+)?$" 28 - arm,cci-400 29 - arm,cci-500 30 - arm,cci-550 [all …]
|
/Linux-v6.1/drivers/perf/ |
D | arm_pmu_platform.c | 1 // SPDX-License-Identifier: GPL-2.0 31 int ret = -ENODEV; in probe_current_pmu() 35 for (; info->init != NULL; info++) { in probe_current_pmu() 36 if ((cpuid & info->mask) != info->cpuid) in probe_current_pmu() 38 ret = info->init(pmu); in probe_current_pmu() 49 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_parse_percpu_irq() 51 ret = irq_get_percpu_devid_partition(irq, &pmu->supported_cpus); in pmu_parse_percpu_irq() 55 for_each_cpu(cpu, &pmu->supported_cpus) in pmu_parse_percpu_irq() 56 per_cpu(hw_events->irq, cpu) = irq; in pmu_parse_percpu_irq() 63 return !!of_find_property(node, "interrupt-affinity", NULL); in pmu_has_irq_affinity() [all …]
|
/Linux-v6.1/Documentation/driver-api/ |
D | vfio.rst | 2 VFIO - "Virtual Function I/O" [1]_ 7 allotted. This includes x86 hardware with AMD-Vi and Intel VT-d, 10 agnostic framework for exposing direct device access to userspace, in 11 a secure, IOMMU protected environment. In other words, this allows 12 safe [2]_, non-privileged, userspace drivers. 15 access ("device assignment") when configured for the highest possible 19 bare-metal device drivers [3]_. 22 field, also benefit from low-overhead, direct device access from 23 userspace. Examples include network adapters (often non-TCP/IP based) 28 and requires root privileges to access things like PCI configuration [all …]
|
/Linux-v6.1/drivers/rtc/ |
D | rtc-mxc_v2.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Copyright (c) 2004-2011 Freescale Semiconductor, Inc. 21 #define SRTC_LPCR_NSA BIT(11) /* lp non secure access */ 26 #define SRTC_LPSR_NVES BIT(14) /* lp non-valid state exit status */ 29 #define SRTC_LPSCMR 0x00 /* LP Secure Counter MSB Reg */ 30 #define SRTC_LPSCLR 0x04 /* LP Secure Counter LSB Reg */ 31 #define SRTC_LPSAR 0x08 /* LP Secure Alarm Reg */ 32 #define SRTC_LPCR 0x10 /* LP Control Reg */ 33 #define SRTC_LPSR 0x14 /* LP Status Reg */ 34 #define SRTC_LPPDR 0x18 /* LP Power Supply Glitch Detector Reg */ [all …]
|
/Linux-v6.1/drivers/iommu/ |
D | ipmmu-vmsa.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * IOMMU API for Renesas VMSA-compatible IPMMU 6 * Copyright (C) 2014-2020 Renesas Electronics Corporation 11 #include <linux/dma-mapping.h> 17 #include <linux/io-pgtable.h> 28 #include <asm/dma-iommu.h> 31 #define arm_iommu_attach_device(...) -ENODEV 37 #define IPMMU_CTX_INVALID -1 94 /* ----------------------------------------------------------------------------- 101 #define IMCTR 0x0000 /* R-Car Gen2/3 */ [all …]
|
/Linux-v6.1/arch/xtensa/include/asm/ |
D | thread_info.h | 2 * include/asm-xtensa/thread_info.h 8 * Copyright (C) 2001 - 2005 Tensilica Inc. 24 * low level task data that entry.S needs immediate access to 25 * - this struct should fit entirely inside of one cache line 26 * - this struct shares the supervisor stack pages 27 * - if the contents of this structure are changed, the assembly constants 51 unsigned long status; /* thread-synchronous flags */ 65 * If i-th bit is set then coprocessor state is loaded into the 80 * macros/functions for gaining access to the thread information structure 105 #define GET_THREAD_INFO(reg,sp) \ argument [all …]
|
/Linux-v6.1/drivers/hwtracing/coresight/ |
D | coresight-etm4x.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. 13 #include "coresight-priv.h" 17 * 0x000 - 0x2FC: Trace registers 18 * 0x300 - 0x314: Management registers 19 * 0x318 - 0xEFC: Trace registers 21 * 0xFA0 - 0xFA4: Trace registers 22 * 0xFA8 - 0xFFC: Management registers 24 /* Trace registers (0x000-0x2FC) */ 50 #define TRCSEQEVRn(n) (0x100 + (n * 4)) /* n = 0-2 */ [all …]
|
/Linux-v6.1/drivers/net/wireless/silabs/wfx/ |
D | fwio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (c) 2017-2020, Silicon Laboratories, Inc. 6 * Copyright (c) 2010, ST-Ericsson 88 return -ENOMEM; in wfx_sram_write_dma_safe() 107 wdev->pdata.file_fw, keyset_chip); in get_firmware() 108 ret = firmware_request_nowarn(fw, filename, wdev->dev); in get_firmware() 110 dev_info(wdev->dev, "can't load %s, falling back to %s.sec\n", in get_firmware() 111 filename, wdev->pdata.file_fw); in get_firmware() 112 snprintf(filename, sizeof(filename), "%s.sec", wdev->pdata.file_fw); in get_firmware() 113 ret = request_firmware(fw, filename, wdev->dev); in get_firmware() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/interconnect/ |
D | fsl,imx8m-noc.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/interconnect/fsl,imx8m-noc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Peng Fan <peng.fan@nxp.com> 17 ("Global Programmers View") but not all. Access to this area might be denied 18 for normal (non-secure) world. 20 The buses are based on externally licensed IPs such as ARM NIC-301 and 27 - items: 28 - enum: [all …]
|
/Linux-v6.1/drivers/crypto/caam/ |
D | regs.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * CAAM hardware register-level view 5 * Copyright 2008-2011 Freescale Semiconductor, Inc. 15 #include <linux/io-64-nonatomic-hi-lo.h> 18 * Architecture-specific register access methods 20 * CAAM's bus-addressable registers are 64 bits internally. 21 * They have been wired to be safely accessible on 32-bit 24 * can be treated as two 32-bit entities, or finally (c) if they 25 * must be treated as a single 64-bit value, then this can safely 26 * be done with two 32-bit cycles. [all …]
|
/Linux-v6.1/drivers/mailbox/ |
D | ti-msgmgr.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2015-2022 Texas Instruments Incorporated - https://www.ti.com/ 22 #include <linux/soc/ti/ti-msgmgr.h> 24 #define Q_DATA_OFFSET(proxy, queue, reg) \ argument 25 ((0x10000 * (proxy)) + (0x80 * (queue)) + ((reg) * 4)) 30 #define SPROXY_THREAD_DATA_OFFSET(tid, reg) \ argument 31 (SPROXY_THREAD_OFFSET(tid) + ((reg) * 0x4) + 0x4) 41 * struct ti_msgmgr_valid_queue_desc - SoC valid queues meant for this processor 53 * struct ti_msgmgr_desc - Description of message manager integration 63 * @valid_queues: List of Valid queues that the processor can access [all …]
|
/Linux-v6.1/drivers/irqchip/ |
D | irq-gic-v3.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2013-2017 ARM Limited, All Rights Reserved. 23 #include <linux/irqchip/arm-gic-common.h> 24 #include <linux/irqchip/arm-gic-v3.h> 25 #include <linux/irqchip/irq-partition-percpu.h> 32 #include "irq-gic-common.h" 70 * SCR_EL3.FIQ, and the behaviour of non-secure priority registers of the 74 * When security is enabled, non-secure priority values from the (re)distributor 78 * If SCR_EL3.FIQ == 1, the values written to/read from PMR and RPR at non-secure 84 * - section 4.8.1 Non-secure accesses to register fields for Secure interrupt [all …]
|
/Linux-v6.1/arch/powerpc/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 21 # On Book3S 64, the default virtual address space for 64-bit processes 24 # between bottom-up and top-down allocations for applications that 27 default 29 if PPC_BOOK3S_64 && PPC_64K_PAGES # 29 = 45 (32T) - 16 (64K) 28 default 33 if PPC_BOOK3S_64 # 33 = 45 (32T) - 12 (4K) 30 # On all other 64-bit platforms (currently only Book3E), the virtual 33 default 32 if 64BIT # 32 = 44 (16T) - 12 (4K) 35 # For 32-bit, use the compat values, as they're the same. 40 default 14 if 64BIT && PPC_64K_PAGES # 14 = 30 (1GB) - 16 (64K) 41 default 18 if 64BIT # 18 = 30 (1GB) - 12 (4K) [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/memory-controllers/ |
D | nvidia,tegra186-mc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/memory-controllers/nvidia,tegra186-mc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jon Hunter <jonathanh@nvidia.com> 11 - Thierry Reding <thierry.reding@gmail.com> 16 handles memory requests for 40-bit virtual addresses from internal clients 21 available for video and other secure applications, as well as DRAM ECC for 27 pattern: "^memory-controller@[0-9a-f]+$" 31 - enum: [all …]
|
/Linux-v6.1/include/linux/mfd/ |
D | intel-m10-bmc.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 * Copyright (C) 2018-2020 Intel Corporation, Inc. 39 /* Secure update doorbell register, in system register region */ 122 * struct intel_m10bmc - Intel MAX 10 BMC parent driver data structure 124 * @regmap: the regmap used to access registers by m10bmc itself 132 * register access helper functions. 134 * m10bmc_raw_read - read m10bmc register per addr 135 * m10bmc_sys_read - read m10bmc system register per offset 143 ret = regmap_read(m10bmc->regmap, addr, val); in m10bmc_raw_read() 145 dev_err(m10bmc->dev, "fail to read raw reg %x: %d\n", in m10bmc_raw_read()
|
/Linux-v6.1/drivers/crypto/inside-secure/ |
D | safexcel.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Antoine Tenart <antoine.tenart@free-electrons.com> 10 #include <linux/dma-mapping.h> 45 writel(0, priv->base + EIP197_FLUE_IFC_LUT(i)); in eip197_trc_cache_setupvirt() 51 for (i = 0; i < priv->config.rings; i++) { in eip197_trc_cache_setupvirt() 52 writel(0, priv->base + EIP197_FLUE_CACHEBASE_LO(i)); in eip197_trc_cache_setupvirt() 53 writel(0, priv->base + EIP197_FLUE_CACHEBASE_HI(i)); in eip197_trc_cache_setupvirt() 55 priv->base + EIP197_FLUE_CONFIG(i)); in eip197_trc_cache_setupvirt() 57 writel(0, priv->base + EIP197_FLUE_OFFSETS); in eip197_trc_cache_setupvirt() 58 writel(0, priv->base + EIP197_FLUE_ARC4_OFFSET); in eip197_trc_cache_setupvirt() [all …]
|