feat(tc): initialize MHU channels with RSE

Initialize MHU channels between TF-A and RSE, this is a preparation
for later sending messages to RSE.

Signed-off-by: Leo Yan <leo.yan@arm.com>
Signed-off-by: Icen Zeyada <Icen.Zeyada2@arm.com>
Change-Id: I66095cafcc1d48249cf957a49dc1dad3059a0010
This commit is contained in:
Leo Yan 2024-05-21 16:33:01 +00:00 committed by Icen Zeyada
parent 22bde5b498
commit 0328f34222
2 changed files with 17 additions and 8 deletions

View file

@ -230,18 +230,17 @@ $(eval TC_HW_CONFIG := ${BUILD_PLAT}/$(patsubst %.dts,%.dtb,$(TC_HW_CONFIG_DTS))
# Add the HW_CONFIG to FIP and specify the same to certtool
$(eval $(call TOOL_ADD_PAYLOAD,${TC_HW_CONFIG},--hw-config,${TC_HW_CONFIG}))
$(info Including rse_comms.mk)
include drivers/arm/rse/rse_comms.mk
BL1_SOURCES += ${RSE_COMMS_SOURCES}
BL2_SOURCES += ${RSE_COMMS_SOURCES}
BL31_SOURCES += ${RSE_COMMS_SOURCES}
# Include Measured Boot makefile before any Crypto library makefile.
# Crypto library makefile may need default definitions of Measured Boot build
# flags present in Measured Boot makefile.
$(info Including rse_comms.mk)
ifeq (${MEASURED_BOOT},1)
$(info Including rse_comms.mk)
include drivers/arm/rse/rse_comms.mk
BL1_SOURCES += ${RSE_COMMS_SOURCES}
BL2_SOURCES += ${RSE_COMMS_SOURCES}
PLAT_INCLUDES += -Iinclude/lib/psa
ifeq (${DICE_PROTECTION_ENVIRONMENT},1)
$(info Including qcbor.mk)
include drivers/measured_boot/rse/qcbor.mk

View file

@ -26,6 +26,10 @@
#include <psa/crypto_values.h>
#endif /* PLATFORM_TEST_TFM_TESTSUITE */
#include <drivers/arm/rse_comms.h>
#include <plat/common/platform.h>
#include "rse_platform_api.h"
#ifdef PLATFORM_TEST_TFM_TESTSUITE
/*
* We pretend using an external RNG (through MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG
@ -190,6 +194,12 @@ void tc_bl31_plat_runtime_setup(void)
plat_arm_secure_wdt_start();
arm_bl31_plat_runtime_setup();
/* Initialise RSE communication channel */
status = rse_comms_init(PLAT_RSE_AP_SND_MHU_BASE, PLAT_RSE_AP_RCV_MHU_BASE);
if (status != PSA_SUCCESS) {
ERROR("Failed to initialize RSE communication channel - psa_status = %d\n", status);
}
}
void bl31_plat_runtime_setup(void)