mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-17 18:14:24 +00:00

TRP is a small test payload that implements Realm Monitor Management (RMM) functionalities. RMM runs in the Realm world (R-EL2) and manages the execution of Realm VMs and their interaction with the hypervisor in Normal world. TRP is used to test the interface between RMM and Normal world software, known as Realm Management Interface (RMI). Current functions includes returning RMM version and transitioning granules from Non-secure to Realm world and vice versa. More information about RMM can be found at: https://developer.arm.com/documentation/den0125/latest Signed-off-by: Zelalem Aweke <zelalem.aweke@arm.com> Change-Id: Ic7b9a1e1f3142ef6458d40150d0b4ba6bd723ea2
40 lines
1,007 B
C
40 lines
1,007 B
C
/*
|
|
* Copyright (c) 2021, Arm Limited. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#include <common/bl_common.h>
|
|
#include <common/debug.h>
|
|
#include <drivers/arm/pl011.h>
|
|
#include <drivers/console.h>
|
|
#include <plat/arm/common/plat_arm.h>
|
|
#include <platform_def.h>
|
|
|
|
/*******************************************************************************
|
|
* Initialize the UART
|
|
******************************************************************************/
|
|
static console_t arm_trp_runtime_console;
|
|
|
|
void arm_trp_early_platform_setup(void)
|
|
{
|
|
/*
|
|
* Initialize a different console than already in use to display
|
|
* messages from trp
|
|
*/
|
|
int rc = console_pl011_register(PLAT_ARM_TRP_UART_BASE,
|
|
PLAT_ARM_TRP_UART_CLK_IN_HZ,
|
|
ARM_CONSOLE_BAUDRATE,
|
|
&arm_trp_runtime_console);
|
|
if (rc == 0) {
|
|
panic();
|
|
}
|
|
|
|
console_set_scope(&arm_trp_runtime_console,
|
|
CONSOLE_FLAG_BOOT | CONSOLE_FLAG_RUNTIME);
|
|
}
|
|
|
|
void trp_early_platform_setup(void)
|
|
{
|
|
arm_trp_early_platform_setup();
|
|
}
|