summaryrefslogtreecommitdiff
path: root/plat/xilinx
diff options
context:
space:
mode:
authorAmbroise Vincent <ambroise.vincent@arm.com>2019-05-29 11:46:08 +0100
committerSiva Durga Prasad Paladugu <sivadur@xilinx.com>2019-07-01 11:35:34 +0530
commit55a08b35b1533fc844776cf7a5b0c4379c7a759f (patch)
tree3c70ee255f3786e9933923851d7aea9727e0765b /plat/xilinx
parent39c92b6271f4bde4e84f2459dbc18228cedd7825 (diff)
zynqmp: add support for multi console interface
This patch addds multi console interface for ZynqMP platform Change-Id: I508a61412df2b71d04bca6a1139c8f32cbd7dccd Signed-off-by: Ambroise Vincent <ambroise.vincent@arm.com> Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Tested-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Diffstat (limited to 'plat/xilinx')
-rw-r--r--plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S8
-rw-r--r--plat/xilinx/zynqmp/bl31_zynqmp_setup.c13
-rw-r--r--plat/xilinx/zynqmp/include/plat_private.h3
-rw-r--r--plat/xilinx/zynqmp/platform.mk3
-rw-r--r--plat/xilinx/zynqmp/tsp/tsp_plat_setup.c13
5 files changed, 25 insertions, 15 deletions
diff --git a/plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S b/plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S
index 8d816653..beba6640 100644
--- a/plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S
+++ b/plat/xilinx/zynqmp/aarch64/zynqmp_helpers.S
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -90,7 +90,7 @@ func plat_crash_console_init
mov_imm x0, ZYNQMP_CRASH_UART_BASE
mov_imm x1, ZYNQMP_CRASH_UART_CLK_IN_HZ
mov_imm x2, ZYNQMP_UART_BAUDRATE
- b console_core_init
+ b console_cdns_core_init
endfunc plat_crash_console_init
/* ---------------------------------------------
@@ -102,7 +102,7 @@ endfunc plat_crash_console_init
*/
func plat_crash_console_putc
mov_imm x1, ZYNQMP_CRASH_UART_BASE
- b console_core_putc
+ b console_cdns_core_putc
endfunc plat_crash_console_putc
/* ---------------------------------------------
@@ -115,7 +115,7 @@ endfunc plat_crash_console_putc
*/
func plat_crash_console_flush
mov_imm x0, ZYNQMP_CRASH_UART_BASE
- b console_core_flush
+ b console_cdns_core_flush
endfunc plat_crash_console_flush
/* ---------------------------------------------------------------------
diff --git a/plat/xilinx/zynqmp/bl31_zynqmp_setup.c b/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
index 0d0b991a..285a4eb8 100644
--- a/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
+++ b/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -57,9 +57,14 @@ static inline void bl31_set_default_config(void)
void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
u_register_t arg2, u_register_t arg3)
{
- /* Initialize the console to provide early debug support */
- console_init(ZYNQMP_UART_BASE, zynqmp_get_uart_clk(),
- ZYNQMP_UART_BAUDRATE);
+ /* Register the console to provide early debug support */
+ static console_cdns_t bl31_boot_console;
+ (void)console_cdns_register(ZYNQMP_UART_BASE,
+ zynqmp_get_uart_clk(),
+ ZYNQMP_UART_BAUDRATE,
+ &bl31_boot_console);
+ console_set_scope(&bl31_boot_console.console,
+ CONSOLE_FLAG_RUNTIME | CONSOLE_FLAG_BOOT);
/* Initialize the platform config for future decision making */
zynqmp_config_setup();
diff --git a/plat/xilinx/zynqmp/include/plat_private.h b/plat/xilinx/zynqmp/include/plat_private.h
index 99d0bc67..8bdf4296 100644
--- a/plat/xilinx/zynqmp/include/plat_private.h
+++ b/plat/xilinx/zynqmp/include/plat_private.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2014-2019, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -11,6 +11,7 @@
#include <bl31/interrupt_mgmt.h>
#include <common/bl_common.h>
+#include <drivers/cadence/cdns_uart.h>
void zynqmp_config_setup(void);
diff --git a/plat/xilinx/zynqmp/platform.mk b/plat/xilinx/zynqmp/platform.mk
index b2f91cd8..bd7bc08d 100644
--- a/plat/xilinx/zynqmp/platform.mk
+++ b/plat/xilinx/zynqmp/platform.mk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
+# Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
@@ -59,7 +59,6 @@ PLAT_BL_COMMON_SOURCES := lib/xlat_tables/xlat_tables_common.c \
drivers/arm/gic/v2/gicv2_main.c \
drivers/arm/gic/v2/gicv2_helpers.c \
drivers/cadence/uart/aarch64/cdns_console.S \
- drivers/console/aarch64/console.S \
plat/arm/common/arm_cci.c \
plat/arm/common/arm_common.c \
plat/arm/common/arm_gicv2.c \
diff --git a/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c b/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
index e3d4164d..7f0ac74c 100644
--- a/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
+++ b/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2014-2019, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -18,11 +18,16 @@
void tsp_early_platform_setup(void)
{
/*
- * Initialize a different console than already in use to display
+ * Register a different console than already in use to display
* messages from TSP
*/
- console_init(ZYNQMP_UART_BASE, zynqmp_get_uart_clk(),
- ZYNQMP_UART_BAUDRATE);
+ static console_cdns_t tsp_boot_console;
+ (void)console_cdns_register(ZYNQMP_UART_BASE,
+ zynqmp_get_uart_clk(),
+ ZYNQMP_UART_BAUDRATE,
+ &tsp_boot_console);
+ console_set_scope(&tsp_boot_console.console,
+ CONSOLE_FLAG_RUNTIME | CONSOLE_FLAG_BOOT);
/* Initialize the platform config for future decision making */
zynqmp_config_setup();