/Linux-v5.15/include/linux/firmware/intel/ |
D | stratix10-smc.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Copyright (C) 2017-2018, Intel Corporation 9 #include <linux/arm-smccc.h> 13 * This file defines the Secure Monitor Call (SMC) message protocol used for 14 * service layer driver in normal world (EL1) to communicate with secure 15 * monitor software in Secure Monitor Exception Level 3 (EL3). 17 * This file is shared with secure firmware (FW) which is out of kernel tree. 19 * An ARM SMC instruction takes a function identifier and up to 6 64-bit 20 * register values as arguments, and can return up to 4 64-bit register 21 * value. The operation of the secure monitor is determined by the parameter [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/firmware/meson/ |
D | meson_sm.txt | 1 * Amlogic Secure Monitor 3 In the Amlogic SoCs the Secure Monitor code is used to provide access to the 6 Required properties for the secure monitor node: 7 - compatible: Should be "amlogic,meson-gxbb-sm" 12 sm: secure-monitor { 13 compatible = "amlogic,meson-gxbb-sm";
|
/Linux-v5.15/drivers/firmware/meson/ |
D | meson_sm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Amlogic Secure Monitor driver 9 #define pr_fmt(fmt) "meson-sm: " fmt 11 #include <linux/arm-smccc.h> 62 const struct meson_sm_cmd *cmd = chip->cmd; in meson_sm_get_cmd() 64 while (cmd->smc_id && cmd->index != cmd_index) in meson_sm_get_cmd() 67 return cmd->smc_id; in meson_sm_get_cmd() 91 * meson_sm_call - generic SMC32 call to the secure-monitor 93 * @fw: Pointer to secure-monitor firmware 109 if (!fw->chip) in meson_sm_call() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # Amlogic Secure Monitor driver 6 tristate "Amlogic Secure Monitor driver" 11 Say y here to enable the Amlogic secure monitor driver
|
/Linux-v5.15/arch/arm/mach-bcm/ |
D | bcm_kona_smc.c | 35 {.compatible = "brcm,kona-smc"}, 36 {.compatible = "bcm,kona-smc"}, /* deprecated name */ 52 return -ENODEV; in bcm_kona_smc_init() 56 return -EINVAL; in bcm_kona_smc_init() 58 /* We assume space for four 32-bit arguments */ in bcm_kona_smc_init() 60 return -EINVAL; in bcm_kona_smc_init() 65 return -EINVAL; in bcm_kona_smc_init() 69 return -ENOMEM; in bcm_kona_smc_init() 72 pr_info("Kona Secure API initialized\n"); in bcm_kona_smc_init() 80 * Only core 0 can run the secure monitor code. If an "smc" request [all …]
|
D | kona_l2_cache.c | 2 * Copyright (C) 2012-2014 Broadcom Corporation 17 #include <asm/hardware/cache-l2x0.h> 29 pr_info("Secure API not available (%d). Skipping L2 init.\n", in kona_l2_cache_init() 36 pr_err("Secure Monitor call failed (%u)! Skipping L2 init.\n", in kona_l2_cache_init()
|
/Linux-v5.15/Documentation/devicetree/bindings/nvmem/ |
D | amlogic-efuse.txt | 4 - compatible: should be "amlogic,meson-gxbb-efuse" 5 - clocks: phandle to the efuse peripheral clock provided by the 7 - secure-monitor: phandle to the secure-monitor node 16 compatible = "amlogic,meson-gxbb-efuse"; 18 #address-cells = <1>; 19 #size-cells = <1>; 20 secure-monitor = <&sm>; 35 sm: secure-monitor { 36 compatible = "amlogic,meson-gxbb-sm"; 46 nvmem-cells = <ð_mac>; [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/firmware/ |
D | intel,stratix10-svc.txt | 3 Intel Stratix10 SoC is composed of a 64 bit quad-core ARM Cortex A53 hard 4 processor system (HPS) and Secure Device Manager (SDM). When the FPGA is 10 communication with SDM, only the secure world of software (EL3, Exception 18 driver also manages secure monitor call (SMC) to communicate with secure monitor 22 ------------------- 26 - compatible: "intel,stratix10-svc" or "intel,agilex-svc" 27 - method: smc or hvc 28 smc - Secure Monitor Call 29 hvc - Hypervisor Call 30 - memory-region: [all …]
|
/Linux-v5.15/drivers/firmware/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 4 # see Documentation/kbuild/kconfig-language.rst. 19 provides a mechanism for inter-processor communication between SCP 70 bool "Add firmware-provided memory map to sysfs" if EXPERT 73 Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap. 77 See also Documentation/ABI/testing/sysfs-firmware-memmap. 110 DMI-based module auto-loading. 182 and manages secure monitor call to communicate with secure monitor 183 software at secure monitor exception level. 213 warm-restart enter a special debug mode that allows the user to [all …]
|
D | stratix10-svc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2017-2018, Intel Corporation 19 #include <linux/firmware/intel/stratix10-smc.h> 20 #include <linux/firmware/intel/stratix10-svc-client.h> 24 * SVC_NUM_DATA_IN_FIFO - number of struct stratix10_svc_data in the FIFO 26 * SVC_NUM_CHANNEL - number of channel supported by service layer driver 28 * FPGA_CONFIG_DATA_CLAIM_TIMEOUT_MS - claim back the submitted buffer(s) 29 * from the secure world for FPGA manager to reuse, or to free the buffer(s) 30 * when all bit-stream data had be send. 32 * FPGA_CONFIG_STATUS_TIMEOUT_SEC - poll the FPGA configuration status, [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/power/ |
D | amlogic,meson-sec-pwrc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0+ OR MIT) 5 --- 6 $id: "http://devicetree.org/schemas/power/amlogic,meson-sec-pwrc.yaml#" 7 $schema: "http://devicetree.org/meta-schemas/core.yaml#" 9 title: Amlogic Meson Secure Power Domains 12 - Jianxin Pan <jianxin.pan@amlogic.com> 15 Secure Power Domains used in Meson A1/C1 SoCs, and should be the child node 16 of secure-monitor. 21 - amlogic,meson-a1-pwrc 23 "#power-domain-cells": [all …]
|
/Linux-v5.15/arch/arm/mach-omap2/ |
D | omap-secure.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * omap-secure.h: OMAP Secure infrastructure header. 15 /* Monitor error code */ 23 /* Secure HAL API flags */ 30 /* Maximum Secure memory storage size */ 35 /* Secure low power HAL API index */ 41 /* Secure Monitor mode APIs */ 52 /* Secure PPA(Primary Protected Application) APIs */ 60 /* Secure RX-51 PPA (Primary Protected Application) APIs */
|
D | omap-smc.S | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * OMAP34xx and OMAP44xx secure APIs file. 15 * This is common routine to manage secure monitor API 16 * used to modify the PL310 secure registers. 18 * the monitor API number. It uses few CPU registers 23 .arch armv7-a 26 stmfd sp!, {r2-r12, lr} 31 ldmfd sp!, {r2-r12, pc} 36 * Low level common routine for secure HAL and PPA APIs. 43 stmfd sp!, {r4-r12, lr} [all …]
|
D | sleep34xx.S | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 5 * Karthik Dasu <karthik-dp@ti.com> 9 * Richard Woodruff <r-woodruff2@ti.com> 57 * with non-Thumb-2-capable firmware. 82 * Function to call rom code to save secure ram context. 86 .arch armv7-a 89 stmfd sp!, {r4 - r11, lr} @ save registers on stack 92 mov r12, r0 @ copy secure service ID in r12 98 smc #1 @ call SMI monitor (smi #1) 103 ldmfd sp!, {r4 - r11, pc} [all …]
|
/Linux-v5.15/arch/arm/mach-highbank/ |
D | smc.S | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Copied from omap44xx-smc.S Copyright (C) 2010 Texas Instruments, Inc. 10 * This is common routine to manage secure monitor API 11 * used to modify the PL310 secure registers. 13 * the monitor API number. 16 .arch armv7-a 19 stmfd sp!, {r4-r11, lr} 24 ldmfd sp!, {r4-r11, pc}
|
/Linux-v5.15/arch/arm/common/ |
D | secure_cntvoff.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 * Initialization of CNTVOFF register from secure mode 13 .arch armv7-a 15 * CNTVOFF has to be initialized either from non-secure Hypervisor 16 * mode or secure Monitor mode with SCR.NS==1. If TrustZone is enabled 17 * then it should be handled by the secure code. The CPU must implement 21 mrc p15, 0, r1, c1, c1, 0 /* Get Secure Config */ 23 mcr p15, 0, r0, c1, c1, 0 /* Set Non Secure bit */ 28 mcr p15, 0, r1, c1, c1, 0 /* Set Secure bit */
|
/Linux-v5.15/Documentation/devicetree/bindings/arm/ |
D | pmu.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: ARM Performance Monitor Units 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 - arm,armv8-pmuv3 # Only for s/w models [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/misc/ |
D | brcm,kona-smc.txt | 1 Broadcom Secure Monitor Bounce buffer 2 ----------------------------------------------------- 4 used for non-secure to secure communications. 7 - compatible : "brcm,kona-smc" 8 - DEPRECATED: compatible : "bcm,kona-smc" 9 - reg : Location and size of bounce buffer 13 compatible = "brcm,bcm11351-smc", "brcm,kona-smc";
|
/Linux-v5.15/include/linux/firmware/ |
D | trusted_foundations.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 7 * Support for the Trusted Foundations secure monitor. 10 * Tegra-based devices sold on the market are concerned). Such devices can only 12 * SMC calls to the secure monitor. The calls are completely specific to 27 #include <asm/hardware/cache-l2x0.h> 78 if (of_find_compatible_node(NULL, NULL, "tlm,trusted-foundations")) in of_register_trusted_foundations()
|
/Linux-v5.15/Documentation/devicetree/bindings/arm/amlogic/ |
D | amlogic,meson-mx-secbus2.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: "http://devicetree.org/schemas/arm/amlogic/amlogic,meson-mx-secbus2.yaml#" 5 $schema: "http://devicetree.org/meta-schemas/core.yaml#" 10 - Martin Blumenstingl <martin.blumenstingl@googlemail.com> 14 contains registers for various IP blocks such as pin-controller bits for 16 The registers can be accessed directly when not running in "secure mode". 17 When "secure mode" is enabled then these registers have to be accessed 18 through secure monitor calls. 23 - enum: [all …]
|
/Linux-v5.15/Documentation/driver-api/firmware/ |
D | other_interfaces.rst | 5 -------------- 7 .. kernel-doc:: drivers/firmware/dmi_scan.c 11 -------------- 13 .. kernel-doc:: drivers/firmware/edd.c 17 --------------------------------- 19 higher than the kernel is granted. Such secure features include 25 drivers to request access to the secure features. The requests are queued 27 of the requests on to a secure monitor (EL3). 29 .. kernel-doc:: include/linux/firmware/intel/stratix10-svc-client.h 32 .. kernel-doc:: include/linux/firmware/intel/stratix10-svc-client.h [all …]
|
/Linux-v5.15/arch/arm/mach-keystone/ |
D | smc.S | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Keystone Secure APIs 14 * Low level CPU monitor API 15 * @command: Monitor command. 23 stmfd sp!, {r4-r11, lr} 25 ldmfd sp!, {r4-r11, pc}
|
/Linux-v5.15/drivers/nvmem/ |
D | meson-efuse.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 #include <linux/nvmem-provider.h> 36 { .compatible = "amlogic,meson-gxbb-efuse", }, 43 struct device *dev = &pdev->dev; in meson_efuse_probe() 52 sm_np = of_parse_phandle(pdev->dev.of_node, "secure-monitor", 0); in meson_efuse_probe() 54 dev_err(&pdev->dev, "no secure-monitor node\n"); in meson_efuse_probe() 55 return -ENODEV; in meson_efuse_probe() 61 return -EPROBE_DEFER; in meson_efuse_probe() 66 if (ret != -EPROBE_DEFER) in meson_efuse_probe() 87 return -EINVAL; in meson_efuse_probe() [all …]
|
/Linux-v5.15/tools/arch/x86/kcpuid/ |
D | cpuid.csv | 22 1, 0, ECX, 2, dtes64, DS area uses 64-bit layout 23 1, 0, ECX, 3, mwait, MONITOR/MWAIT supported 28 1, 0, ECX, 8, tm2, Thermal Monitor 2 33 1, 0, ECX, 13, cmpxchg16b, 'CMPXCHG16B - Compare and Exchange Bytes' supported 36 1, 0, ECX, 17, pcid, Process-Context Identifiers feature present 43 …1, 0, ECX, 24, tsc_deadline_timer, LAPIC supports one-shot operation using a TSC deadline … 48 1, 0, ECX, 29, f16c, 16-bit floating-point conversion instruction supported 52 1, 0, EDX, 1, vme, Virtual-8086 Mode Enhancement 67 1, 0, EDX, 17, pse36, 36-Bit Page Size Extension 72 1, 0, EDX, 22, acpi, Thermal Monitor and Software Controlled Clock Facilities [all …]
|
/Linux-v5.15/drivers/watchdog/ |
D | arm_smc_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ARM Secure Monitor Call watchdog driver 10 #include <linux/arm-smccc.h> 45 if (res->a0 == PSCI_RET_NOT_SUPPORTED) in smcwd_call() 46 return -ENODEV; in smcwd_call() 47 if (res->a0 == PSCI_RET_INVALID_PARAMS) in smcwd_call() 48 return -EINVAL; in smcwd_call() 49 if (res->a0 != PSCI_RET_SUCCESS) in smcwd_call() 50 return -EIO; in smcwd_call() 75 wdd->timeout = timeout; in smcwd_set_timeout() [all …]
|