mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-05-03 09:29:57 +00:00
Merge "plat/arm/fvp: populate runtime console parameters dynamically" into integration
This commit is contained in:
commit
beff491075
4 changed files with 59 additions and 0 deletions
54
plat/arm/board/fvp/fvp_console.c
Normal file
54
plat/arm/board/fvp/fvp_console.c
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020, ARM Limited and Contributors. All rights reserved.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
|
||||||
|
#include <platform_def.h>
|
||||||
|
|
||||||
|
#include <common/debug.h>
|
||||||
|
#include <drivers/arm/pl011.h>
|
||||||
|
#include <drivers/console.h>
|
||||||
|
#include <fconf_hw_config_getter.h>
|
||||||
|
#include <plat/arm/common/plat_arm.h>
|
||||||
|
|
||||||
|
static console_t fvp_runtime_console;
|
||||||
|
|
||||||
|
/* Initialize the runtime console */
|
||||||
|
void arm_console_runtime_init(void)
|
||||||
|
{
|
||||||
|
uintptr_t uart_base;
|
||||||
|
uint32_t uart_clk;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* fconf APIs are not supported for RESET_TO_SP_MIN, RESET_TO_BL31 and
|
||||||
|
* BL2_AT_EL3 systems.
|
||||||
|
*/
|
||||||
|
#if RESET_TO_SP_MIN || RESET_TO_BL31 || BL2_AT_EL3
|
||||||
|
uart_base = PLAT_ARM_RUN_UART_BASE;
|
||||||
|
uart_clk = PLAT_ARM_RUN_UART_CLK_IN_HZ;
|
||||||
|
#else
|
||||||
|
uart_base = FCONF_GET_PROPERTY(hw_config, uart_serial_config,
|
||||||
|
uart_base);
|
||||||
|
uart_clk = FCONF_GET_PROPERTY(hw_config, uart_serial_config,
|
||||||
|
uart_clk);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int rc = console_pl011_register(uart_base, uart_clk,
|
||||||
|
ARM_CONSOLE_BAUDRATE,
|
||||||
|
&fvp_runtime_console);
|
||||||
|
|
||||||
|
if (rc == 0) {
|
||||||
|
panic();
|
||||||
|
}
|
||||||
|
|
||||||
|
console_set_scope(&fvp_runtime_console, CONSOLE_FLAG_RUNTIME);
|
||||||
|
}
|
||||||
|
|
||||||
|
void arm_console_runtime_end(void)
|
||||||
|
{
|
||||||
|
(void)console_flush();
|
||||||
|
(void)console_unregister(&fvp_runtime_console);
|
||||||
|
}
|
|
@ -205,6 +205,7 @@ BL31_SOURCES += drivers/arm/fvp/fvp_pwrc.c \
|
||||||
drivers/cfi/v2m/v2m_flash.c \
|
drivers/cfi/v2m/v2m_flash.c \
|
||||||
lib/utils/mem_region.c \
|
lib/utils/mem_region.c \
|
||||||
plat/arm/board/fvp/fvp_bl31_setup.c \
|
plat/arm/board/fvp/fvp_bl31_setup.c \
|
||||||
|
plat/arm/board/fvp/fvp_console.c \
|
||||||
plat/arm/board/fvp/fvp_pm.c \
|
plat/arm/board/fvp/fvp_pm.c \
|
||||||
plat/arm/board/fvp/fvp_topology.c \
|
plat/arm/board/fvp/fvp_topology.c \
|
||||||
plat/arm/board/fvp/aarch64/fvp_helpers.S \
|
plat/arm/board/fvp/aarch64/fvp_helpers.S \
|
||||||
|
|
|
@ -10,6 +10,7 @@ BL32_SOURCES += drivers/arm/fvp/fvp_pwrc.c \
|
||||||
lib/utils/mem_region.c \
|
lib/utils/mem_region.c \
|
||||||
plat/arm/board/fvp/aarch32/fvp_helpers.S \
|
plat/arm/board/fvp/aarch32/fvp_helpers.S \
|
||||||
plat/arm/board/fvp/fvp_pm.c \
|
plat/arm/board/fvp/fvp_pm.c \
|
||||||
|
plat/arm/board/fvp/fvp_console.c \
|
||||||
plat/arm/board/fvp/fvp_topology.c \
|
plat/arm/board/fvp/fvp_topology.c \
|
||||||
plat/arm/board/fvp/sp_min/fvp_sp_min_setup.c \
|
plat/arm/board/fvp/sp_min/fvp_sp_min_setup.c \
|
||||||
plat/arm/common/arm_nor_psci_mem_protect.c \
|
plat/arm/common/arm_nor_psci_mem_protect.c \
|
||||||
|
|
|
@ -13,6 +13,9 @@
|
||||||
#include <drivers/console.h>
|
#include <drivers/console.h>
|
||||||
#include <plat/arm/common/plat_arm.h>
|
#include <plat/arm/common/plat_arm.h>
|
||||||
|
|
||||||
|
#pragma weak arm_console_runtime_init
|
||||||
|
#pragma weak arm_console_runtime_end
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Functions that set up the console
|
* Functions that set up the console
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
Loading…
Add table
Reference in a new issue