Browse Source

Merge "(feat)n1sdp: add support for OP-TEE SPMC" into integration

pull/1986/head
Madhukar Pappireddy 2 years ago
committed by TrustedFirmware Code Review
parent
commit
bce8115884
  1. 6
      plat/arm/board/n1sdp/fdts/n1sdp_fw_config.dts
  2. 30
      plat/arm/board/n1sdp/fdts/n1sdp_optee_spmc_manifest.dts
  3. 10
      plat/arm/board/n1sdp/include/platform_def.h
  4. 7
      plat/arm/board/n1sdp/platform.mk

6
plat/arm/board/n1sdp/fdts/n1sdp_fw_config.dts

@ -15,7 +15,11 @@
max-size = <0x200>;
id = <TB_FW_CONFIG_ID>;
};
tos_fw-config {
load-address = <0x0 0x4001600>;
max-size = <0x1000>;
id = <TOS_FW_CONFIG_ID>;
};
nt_fw-config {
load-address = <0x0 0xFEF00000>;
max-size = <0x0100000>;

30
plat/arm/board/n1sdp/fdts/n1sdp_optee_spmc_manifest.dts

@ -0,0 +1,30 @@
/*
* Copyright (c) 2022 Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/dts-v1/;
/ {
compatible = "arm,ffa-core-manifest-1.0";
#address-cells = <2>;
#size-cells = <1>;
/*
* BL32 image details needed by SPMC
*
* Note:
* binary_size: size of BL32 + TOS_FW_CONFIG
*/
attribute {
spmc_id = <0x8000>;
maj_ver = <0x1>;
min_ver = <0x0>;
exec_state = <0x0>;
load_address = <0x0 0x08000000>;
entrypoint = <0x0 0x08000000>;
binary_size = <0x2000000>;
};
};

10
plat/arm/board/n1sdp/include/platform_def.h

@ -91,7 +91,7 @@
* PLAT_ARM_MAX_BL1_RW_SIZE is calculated using the current BL1 RW debug size
* plus a little space for growth.
*/
#define PLAT_ARM_MAX_BL1_RW_SIZE 0xE000
#define PLAT_ARM_MAX_BL1_RW_SIZE 0xC000
/*
* PLAT_ARM_MAX_ROMLIB_RW_SIZE is define to use a full page
@ -110,12 +110,16 @@
* little space for growth.
*/
#if TRUSTED_BOARD_BOOT
# define PLAT_ARM_MAX_BL2_SIZE 0x20000
# define PLAT_ARM_MAX_BL2_SIZE 0x22000
#else
# define PLAT_ARM_MAX_BL2_SIZE 0x14000
#endif
#define PLAT_ARM_MAX_BL31_SIZE UL(0x3B000)
#define PLAT_ARM_MAX_BL31_SIZE UL(0x40000)
#define PLAT_ARM_SPMC_BASE U(0x08000000)
#define PLAT_ARM_SPMC_SIZE UL(0x02000000) /* 32 MB */
/*******************************************************************************
* N1SDP topology related constants

7
plat/arm/board/n1sdp/platform.mk

@ -68,6 +68,13 @@ $(eval $(call TOOL_ADD_PAYLOAD,${TB_FW_CONFIG},--tb-fw-config,${TB_FW_CONFIG}))
# Add the NT_FW_CONFIG to FIP and specify the same to certtool
$(eval $(call TOOL_ADD_PAYLOAD,${NT_FW_CONFIG},--nt-fw-config,${NT_FW_CONFIG}))
N1SDP_SPMC_MANIFEST_DTS := ${N1SDP_BASE}/fdts/${PLAT}_optee_spmc_manifest.dts
FDT_SOURCES += ${N1SDP_SPMC_MANIFEST_DTS}
N1SDP_TOS_FW_CONFIG := ${BUILD_PLAT}/fdts/${PLAT}_optee_spmc_manifest.dtb
# Add the TOS_FW_CONFIG to FIP and specify the same to certtool
$(eval $(call TOOL_ADD_PAYLOAD,${N1SDP_TOS_FW_CONFIG},--tos-fw-config,${N1SDP_TOS_FW_CONFIG}))
# Setting to 0 as no NVCTR in N1SDP
N1SDP_FW_NVCTR_VAL := 0
TFW_NVCTR_VAL := ${N1SDP_FW_NVCTR_VAL}

Loading…
Cancel
Save