xref: /rk3399_ARM-atf/plat/xilinx/common/include/plat_console.h (revision d2e00eea0518d6cff79b1c5dfb480cb347d74d96)
139234622SPrasad Kummari /*
239234622SPrasad Kummari  * Copyright (c) 2023, Advanced Micro Devices, Inc. All rights reserved.
339234622SPrasad Kummari  *
439234622SPrasad Kummari  * SPDX-License-Identifier: BSD-3-Clause
539234622SPrasad Kummari  */
639234622SPrasad Kummari 
739234622SPrasad Kummari #ifndef PLAT_DT_UART_H
839234622SPrasad Kummari #define PLAT_DT_UART_H
939234622SPrasad Kummari 
1039234622SPrasad Kummari #define DT_UART_DCC_COMPAT	"arm,dcc"
11*d2e00eeaSMaheedhar Bollapalli #define DT_UART_CAD_COMPAT	"xlnx,zynqmp-uart"
12*d2e00eeaSMaheedhar Bollapalli #define DT_UART_PL011_COMPAT	"arm,pl011"
1339234622SPrasad Kummari 
144557ab69SPrasad Kummari /* Default console type is either CADENCE0 or CADENCE1 or PL011_0 or PL011_1
154557ab69SPrasad Kummari  * Debug console type is DCC
16*d2e00eeaSMaheedhar Bollapalli  */
17*d2e00eeaSMaheedhar Bollapalli #define CONSOLE_CDNS	0
18*d2e00eeaSMaheedhar Bollapalli #define CONSOLE_PL011   1
19*d2e00eeaSMaheedhar Bollapalli #define CONSOLE_DCC	2
20*d2e00eeaSMaheedhar Bollapalli 
21*d2e00eeaSMaheedhar Bollapalli typedef struct console_hd {
22*d2e00eeaSMaheedhar Bollapalli 	uint8_t console_state;
23*d2e00eeaSMaheedhar Bollapalli 	uint32_t clk;
24*d2e00eeaSMaheedhar Bollapalli 	uint32_t baud_rate;
25*d2e00eeaSMaheedhar Bollapalli 	uintptr_t base;
26*d2e00eeaSMaheedhar Bollapalli 	uint32_t console_scope;
27*d2e00eeaSMaheedhar Bollapalli 	uint8_t console_type;
28*d2e00eeaSMaheedhar Bollapalli } console_holder;
294557ab69SPrasad Kummari 
3039234622SPrasad Kummari typedef struct dt_uart_info_s {
3139234622SPrasad Kummari 	char compatible[30];
3239234622SPrasad Kummari 	uintptr_t base;
3339234622SPrasad Kummari 	uint32_t baud_rate;
3439234622SPrasad Kummari 	int32_t status;
35*d2e00eeaSMaheedhar Bollapalli 	uint8_t console_type;
3639234622SPrasad Kummari } dt_uart_info_t;
3739234622SPrasad Kummari 
3839234622SPrasad Kummari void setup_console(void);
3939234622SPrasad Kummari 
404557ab69SPrasad Kummari #if defined(CONSOLE_RUNTIME)
414557ab69SPrasad Kummari void console_runtime_init(void);
424557ab69SPrasad Kummari #endif
434557ab69SPrasad Kummari 
4439234622SPrasad Kummari #endif /* PLAT_DT_UART_H */
45