/Linux-v5.15/drivers/crypto/ccp/ |
D | tee-dev.c | 3 * AMD Trusted Execution Environment (TEE) interface 17 #include <linux/psp-tee.h> 20 #include "tee-dev.h" 24 static int tee_alloc_ring(struct psp_tee_device *tee, int ring_size) in tee_alloc_ring() argument 26 struct ring_buf_manager *rb_mgr = &tee->rb_mgr; in tee_alloc_ring() 48 static void tee_free_ring(struct psp_tee_device *tee) in tee_free_ring() argument 50 struct ring_buf_manager *rb_mgr = &tee->rb_mgr; in tee_free_ring() 64 static int tee_wait_cmd_poll(struct psp_tee_device *tee, unsigned int timeout, in tee_wait_cmd_poll() argument 71 *reg = ioread32(tee->io_regs + tee->vdata->cmdresp_reg); in tee_wait_cmd_poll() 78 dev_err(tee->dev, "tee: command timed out, disabling PSP\n"); in tee_wait_cmd_poll() [all …]
|
D | tee-dev.h | 10 /* This file describes the TEE communication interface between host and AMD 24 * enum tee_ring_cmd_id - TEE interface commands for ring buffer configuration 36 * struct tee_init_ring_cmd - Command to init TEE ring buffer 73 * enum tee_cmd_state - TEE command states for the ring buffer interface 75 * @TEE_CMD_STATE_PROCESS: command being processed by TEE environment 85 * enum cmd_resp_state - TEE command's response status maintained by driver 87 * @CMD_WAITING_FOR_RESPONSE: driver waiting for response from TEE 88 * @CMD_RESPONSE_TIMEDOUT: failed to get response from TEE 89 * @CMD_RESPONSE_COPIED: driver has copied response from TEE 99 * struct tee_ring_cmd - Structure of the command buffer in TEE ring [all …]
|
/Linux-v5.15/Documentation/staging/ |
D | tee.rst | 2 TEE subsystem 5 This document describes the TEE subsystem in Linux. 7 A TEE (Trusted Execution Environment) is a trusted OS running in some 9 secure co-processor etc. A TEE driver handles the details needed to 10 communicate with the TEE. 14 - Registration of TEE drivers 16 - Managing shared memory between Linux and the TEE 18 - Providing a generic API to the TEE 20 The TEE interface 23 include/uapi/linux/tee.h defines the generic interface to a TEE. [all …]
|
/Linux-v5.15/include/linux/ |
D | psp-tee.h | 3 * AMD Trusted Execution Environment (TEE) interface 17 /* This file defines the Trusted Execution Environment (TEE) interface commands 19 * AMD-TEE Trusted OS. 23 * enum tee_cmd_id - TEE Interface Command IDs 25 * TEE environment 26 * @TEE_CMD_ID_UNLOAD_TA: Unload TA binary from TEE environment 46 * @cmd_id: TEE command ID (&enum tee_cmd_id) 47 * @buf: Command buffer for TEE processing. On success, is updated 50 * @status: On success, holds the TEE command execution status 53 * TEE environment and waits for a response or until the command times out. [all …]
|
D | tee_drv.h | 14 #include <linux/tee.h> 19 * The file describes the API provided by the generic TEE driver to the 20 * specific TEE driver. 30 #define TEE_SHM_PRIV BIT(7) /* Memory private to TEE driver */ 47 * wait for tee-supplicant daemon to be started if not present 49 * that arises from TEE based kernel drivers that should be 51 * @cap_memref_null: flag indicating if the TEE Client support shared 94 * @shm_register: register shared memory buffer in TEE 95 * @shm_unregister: unregister shared memory buffer in TEE 121 * struct tee_desc - Describes the TEE driver to the subsystem [all …]
|
/Linux-v5.15/tools/testing/selftests/rcutorture/bin/ |
D | kvm-remote.sh | 80 echo | tee -a "$oldrun/remote-log" 81 echo " ----" kvm.sh output: "(`date`)" | tee -a "$oldrun/remote-log" 82 cat $T/kvm.sh.out | tee -a "$oldrun/remote-log" 89 echo $scriptname: kvm-again.sh failed exit code $? | tee -a "$oldrun/remote-log" 90 cat $T/kvm-again.sh.out | tee -a "$oldrun/remote-log" 107 echo $scriptname: kvm-again.sh failed exit code $? | tee -a "$oldrun/remote-log" 108 cat $T/kvm-again.sh.out | tee -a "$oldrun/remote-log" 114 echo | tee -a "$oldrun/remote-log" 115 echo " ----" kvm-again.sh output: "(`date`)" | tee -a "$oldrun/remote-log" 117 echo | tee -a "$oldrun/remote-log" [all …]
|
D | torture.sh | 206 echo " --- " $scriptname $args | tee -a $T/log 207 echo " --- Results directory: " $ds | tee -a $T/log 217 echo " --- Zero time for rcutorture, disabling" | tee -a $T/log 229 echo " --- Zero time for locktorture, disabling" | tee -a $T/log 241 echo " --- Zero time for scftorture, disabling" | tee -a $T/log 261 echo " --- $curflavor:" Start `date` | tee -a $T/log 272 cat $T/$curflavor.out | tee -a $T/log 273 echo retcode=$retcode | tee -a $T/log 319 echo " --- allmodconfig:" Start `date` | tee -a $T/log 404 echo " --- " Done `date` | tee -a $T/log [all …]
|
D | kvm-end-run-stats.sh | 31 echo | tee -a "$rundir/log" 32 echo | tee -a "$rundir/log" 33 echo " --- `date` Test summary:" | tee -a "$rundir/log" 34 echo Results directory: $rundir | tee -a "$rundir/log" 35 kcsan-collapse.sh "$rundir" | tee -a "$rundir/log" 38 cat $T/kvm-recheck.sh.out | tee -a "$rundir/log" 39 echo " --- Done at `date` (`get_starttime_duration $starttime`) exitcode $ret" | tee -a "$rundir/lo…
|
/Linux-v5.15/drivers/tee/optee/ |
D | Kconfig | 2 # OP-TEE Trusted Execution Environment Configuration 4 tristate "OP-TEE" 8 This implements the OP-TEE Trusted Execution Environment (TEE) 17 used by OP-TEE TEE driver.
|
D | call.c | 119 * optee_do_call_with_arg() - Do an SMC to OP-TEE in secure world 123 * Does and SMC to OP-TEE in secure world and handles eventual resulting 124 * Remote Procedure Calls (RPC) from OP-TEE. 397 * in OP-TEE 420 * allocation in OP-TEE 463 * allocations in OP-TEE 473 * allocations in OP-TEE which are not 512 * Currently OP-TEE uses 4k page size and it does not looks in optee_fill_pages_list() 525 * because they bear no value data for OP-TEE. in optee_fill_pages_list() 600 * Allow kernel address to register with OP-TEE as kernel in check_mem_type() [all …]
|
/Linux-v5.15/drivers/tee/ |
D | Kconfig | 3 config TEE config 12 Environment (TEE). 14 if TEE 16 menu "TEE drivers" 18 source "drivers/tee/optee/Kconfig" 19 source "drivers/tee/amdtee/Kconfig"
|
D | Makefile | 2 obj-$(CONFIG_TEE) += tee.o 3 tee-objs += tee_core.o 4 tee-objs += tee_shm.o 5 tee-objs += tee_shm_pool.o
|
/Linux-v5.15/drivers/tee/amdtee/ |
D | call.c | 7 #include <linux/tee.h> 9 #include <linux/psp-tee.h> 15 static int tee_params_to_amd_params(struct tee_param *tee, u32 count, in tee_params_to_amd_params() argument 24 if (!tee || !amd || count > TEE_MAX_PARAMS) in tee_params_to_amd_params() 29 /* AMD TEE does not support meta parameter */ in tee_params_to_amd_params() 30 if (tee[i].attr > TEE_IOCTL_PARAM_ATTR_TYPE_MEMREF_INOUT) in tee_params_to_amd_params() 33 amd->param_types |= ((tee[i].attr & 0xF) << i * 4); in tee_params_to_amd_params() 48 u32 buf_id = get_buffer_id(tee[i].u.memref.shm); in tee_params_to_amd_params() 51 amd->params[i].mref.offset = tee[i].u.memref.shm_offs; in tee_params_to_amd_params() 52 amd->params[i].mref.size = tee[i].u.memref.size; in tee_params_to_amd_params() [all …]
|
D | amdtee_if.h | 8 * This file has definitions related to Host and AMD-TEE Trusted OS interface. 9 * These definitions must match the definitions on the TEE side. 18 ** TEE Param 52 /* Must be same as in GP TEE specification */ 67 ** TEE Commands 120 * struct tee_cmd_load_ta - load Trusted Application (TA) binary into TEE 134 * struct tee_cmd_unload_ta - command to unload TA binary from TEE environment 146 * @return_origin: [out] origin of return code after TEE processing 173 * @return_origin: [out] origin of return code after TEE processing
|
D | core.c | 19 #include <linux/psp-tee.h> 96 * @ctxdata: TEE Context data structure 100 * Scans the TEE context's session list to check if TA is already loaded in to 101 * TEE. If yes, returns the 'session' structure for that TA. Else allocates, 115 /* Scan session list to check if TA is already loaded in to TEE */ in alloc_session() 254 /* Load the TA binary into TEE environment */ in amdtee_open_session() 361 * Send a MAP command to TEE and get the corresponding in amdtee_map_shmem() 393 /* Unmap the shared memory from TEE */ in amdtee_unmap_shmem() 462 pr_err("amd-tee driver: tee not present\n"); in amdtee_driver_init() 498 pr_info("amd-tee driver initialization successful\n"); in amdtee_driver_init() [all …]
|
D | amdtee_private.h | 18 #define DRIVER_AUTHOR "AMD-TEE Linux driver team" 47 * @ta_handle: handle to Trusted Application (TA) loaded in TEE environment 66 * struct amdtee_context_data - AMD-TEE driver context data 67 * @sess_list: Keeps track of sessions opened in current TEE context 68 * @shm_list: Keeps track of buffers allocated and mapped in current TEE 100 * @ta_handle: Handle to TA loaded in TEE
|
D | Kconfig | 2 # AMD-TEE Trusted Execution Environment Configuration 4 tristate "AMD-TEE" 8 This implements AMD's Trusted Execution Environment (TEE) driver.
|
/Linux-v5.15/include/uapi/linux/ |
D | tee.h | 35 * This file describes the API provided by a TEE driver to user space. 37 * Each TEE driver defines a TEE specific protocol which is used for the 51 #define TEE_GEN_CAP_GP (1 << 0)/* GlobalPlatform compliant TEE */ 59 * TEE Implementation ID 65 * OP-TEE specific capabilities 70 * struct tee_ioctl_version_data - TEE version 71 * @impl_id: [out] TEE implementation id 75 * Identifies the TEE implementation, @impl_id is one of TEE_IMPL_ID_* above. 86 * TEE_IOC_VERSION - query version of TEE 88 * Takes a tee_ioctl_version_data struct and returns with the TEE version [all …]
|
/Linux-v5.15/drivers/crypto/ccree/ |
D | cc_fips.c | 20 * whether TEE FIPS error occurred. 27 /* Did the TEE report status? */ in cc_get_tee_fips_status() 37 * This function should push the FIPS REE library status towards the TEE library 52 /* Push REE side FIPS test failure to TEE side */ 62 dev_info(dev, "Notifying TEE of FIPS test failure...\n"); in cc_ree_fips_failure() 94 panic("ccree: TEE reported cryptographic error in fips mode!\n"); in tee_fips_error() 96 dev_err(dev, "TEE reported error!\n"); in tee_fips_error() 100 * This function check if cryptocell tee fips error occurred
|
/Linux-v5.15/Documentation/security/keys/ |
D | trusted-encrypted.rst | 33 (2) TEE (Trusted Execution Environment: OP-TEE based on Arm TrustZone) 36 fuses and is accessible to TEE only. 44 (2) TEE 61 (2) TEE 64 be extended with TEE based measured boot process. 72 (2) TEE 75 more details refer to ``Documentation/staging/tee.rst``. 80 The strength and appropriateness of a particular TPM or TEE for a given 100 * TEE (OP-TEE based on Arm TrustZone) based RNG 178 Trusted Keys usage: TEE [all …]
|
/Linux-v5.15/drivers/firmware/broadcom/ |
D | tee_bnxt_fw.c | 52 * struct tee_bnxt_fw_private - OP-TEE bnxt private data 53 * @dev: OP-TEE based bnxt device. 54 * @ctx: OP-TEE context handler. 95 * Uses an OP-TEE call to start a secure 113 "TA_CMD_BNXT_FASTBOOT invoke failed TEE err: %x, ret:%x\n", in tee_bnxt_fw_load() 124 * Uses an OP-TEE call to copy coredump 157 "TA_CMD_BNXT_COPY_COREDUMP invoke failed TEE err: %x, ret:%x\n", in tee_bnxt_copy_coredump() 193 /* Open context with TEE driver */ in tee_bnxt_fw_probe() 258 MODULE_DEVICE_TABLE(tee, tee_bnxt_fw_id_table);
|
/Linux-v5.15/Documentation/devicetree/bindings/arm/firmware/ |
D | linaro,optee-tz.yaml | 7 title: OP-TEE Device Tree Bindings 13 OP-TEE is a piece of software using hardware features to provide a Trusted 30 The method of calling the OP-TEE Trusted OS depending on smc or hvc 35 register assignments are specified in drivers/tee/optee/optee_smc.h
|
/Linux-v5.15/security/keys/trusted-keys/ |
D | trusted_tee.c | 19 #define DRIVER_NAME "trusted-key-tee" 45 * struct trusted_key_tee_private - TEE Trusted key private data 46 * @dev: TEE based Trusted key device. 47 * @ctx: TEE context handler. 49 * @shm_pool: Memory pool shared with TEE device. 61 * Have the TEE seal(encrypt) the symmetric key 122 * Have the TEE unseal(decrypt) the symmetric key 183 * Have the TEE generate random symmetric key 289 MODULE_DEVICE_TABLE(tee, trusted_key_id_table);
|
/Linux-v5.15/Documentation/ABI/testing/ |
D | sysfs-bus-optee-devices | 1 What: /sys/bus/tee/devices/optee-ta-<uuid>/ 4 Contact: op-tee@lists.trustedfirmware.org 6 OP-TEE bus provides reference to registered drivers under this directory. The <uuid>
|
/Linux-v5.15/drivers/char/hw_random/ |
D | optee-rng.c | 53 * struct optee_rng_private - OP-TEE Random Number Generator private data 54 * @dev: OP-TEE based RNG device. 55 * @ctx: OP-TEE context handler. 59 * @optee_rng: OP-TEE RNG driver structure. 222 /* Open context with TEE driver */ in optee_rng_probe() 278 MODULE_DEVICE_TABLE(tee, optee_rng_id_table); 305 MODULE_DESCRIPTION("OP-TEE based random number generator driver");
|