mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-27 15:24:54 +00:00
feat(tc0): add support for trusted services
This patch adds support for the crypto and secure storage secure partitions for the Total Compute platform. These secure partitions have to be managed by Hafnium executing at S-EL2 Change-Id: I2df690e3a99bf6bf50e2710994a905914a07026e Signed-off-by: Davidson K <davidson.kumaresan@arm.com>
This commit is contained in:
parent
6794378d2e
commit
ca9324819e
4 changed files with 39 additions and 2 deletions
4
Makefile
4
Makefile
|
@ -521,6 +521,10 @@ ifneq (${SPD},none)
|
||||||
ifeq ($(findstring optee_sp,$(ARM_SPMC_MANIFEST_DTS)),optee_sp)
|
ifeq ($(findstring optee_sp,$(ARM_SPMC_MANIFEST_DTS)),optee_sp)
|
||||||
DTC_CPPFLAGS += -DOPTEE_SP_FW_CONFIG
|
DTC_CPPFLAGS += -DOPTEE_SP_FW_CONFIG
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(TS_SP_FW_CONFIG),1)
|
||||||
|
DTC_CPPFLAGS += -DTS_SP_FW_CONFIG
|
||||||
|
endif
|
||||||
else
|
else
|
||||||
# All other SPDs in spd directory
|
# All other SPDs in spd directory
|
||||||
SPD_DIR := spd
|
SPD_DIR := spd
|
||||||
|
|
|
@ -104,6 +104,9 @@ Arm Platform Build Options
|
||||||
device tree. This flag is defined only when ``ARM_SPMC_MANIFEST_DTS`` manifest
|
device tree. This flag is defined only when ``ARM_SPMC_MANIFEST_DTS`` manifest
|
||||||
file name contains pattern optee_sp.
|
file name contains pattern optee_sp.
|
||||||
|
|
||||||
|
- ``TS_SP_FW_CONFIG``: DTC build flag to include Trusted Services (Crypto and
|
||||||
|
secure-storage) as SP in tb_fw_config device tree.
|
||||||
|
|
||||||
- ``ARM_GPT_SUPPORT``: Enable GPT parser to get the entry address and length of
|
- ``ARM_GPT_SUPPORT``: Enable GPT parser to get the entry address and length of
|
||||||
the various partitions present in the GPT image. This support is available
|
the various partitions present in the GPT image. This support is available
|
||||||
only for the BL2 component, and it is disabled by default.
|
only for the BL2 component, and it is disabled by default.
|
||||||
|
|
|
@ -27,8 +27,28 @@
|
||||||
debug_name = "op-tee";
|
debug_name = "op-tee";
|
||||||
load_address = <0xfd280000>;
|
load_address = <0xfd280000>;
|
||||||
vcpu_count = <8>;
|
vcpu_count = <8>;
|
||||||
mem_size = <30928896>; /* 32MB TZC DRAM - SPMC region */
|
#ifdef TS_SP_FW_CONFIG
|
||||||
|
mem_size = <26738688>; /* 25MB TZC DRAM */
|
||||||
|
#else
|
||||||
|
mem_size = <30928896>; /* 29MB TZC DRAM */
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
#ifdef TS_SP_FW_CONFIG
|
||||||
|
vm2 {
|
||||||
|
is_ffa_partition;
|
||||||
|
debug_name = "secure-storage";
|
||||||
|
load_address = <0xfee00000>;
|
||||||
|
vcpu_count = <1>;
|
||||||
|
mem_size = <2097152>; /* 2MB TZC DRAM */
|
||||||
|
};
|
||||||
|
vm3 {
|
||||||
|
is_ffa_partition;
|
||||||
|
debug_name = "crypto";
|
||||||
|
load_address = <0xfec00000>;
|
||||||
|
vcpu_count = <1>;
|
||||||
|
mem_size = <2097152>; /* 2MB TZC DRAM */
|
||||||
|
};
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
cpus {
|
cpus {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2020, Arm Limited. All rights reserved.
|
* Copyright (c) 2020-2021, Arm Limited. All rights reserved.
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
* SPDX-License-Identifier: BSD-3-Clause
|
||||||
*/
|
*/
|
||||||
|
@ -27,6 +27,16 @@
|
||||||
|
|
||||||
secure-partitions {
|
secure-partitions {
|
||||||
compatible = "arm,sp";
|
compatible = "arm,sp";
|
||||||
|
#ifdef TS_SP_FW_CONFIG
|
||||||
|
secure-storage {
|
||||||
|
uuid = "dc1eef48-b17a-4ccf-ac8b-dfcff7711b14";
|
||||||
|
load-address = <0xfee00000>;
|
||||||
|
};
|
||||||
|
crypto {
|
||||||
|
uuid = "d9df52d5-16a2-4bb2-9aa4-d26d3b84e8c0";
|
||||||
|
load-address = <0xfec00000>;
|
||||||
|
};
|
||||||
|
#endif
|
||||||
#if OPTEE_SP_FW_CONFIG
|
#if OPTEE_SP_FW_CONFIG
|
||||||
op-tee {
|
op-tee {
|
||||||
uuid = <0x486178e0 0xe7f811e3 0xbc5e0002 0xa5d5c51b>;
|
uuid = <0x486178e0 0xe7f811e3 0xbc5e0002 0xa5d5c51b>;
|
||||||
|
|
Loading…
Add table
Reference in a new issue