blob: fa6021d4c1188959742bb196115c24102c75cc7d [file] [log] [blame]
Prasad Kummarib72494e2023-09-19 22:15:05 +05301/*
2 * Copyright (c) 2023, Advanced Micro Devices, Inc. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef PLAT_DT_UART_H
8#define PLAT_DT_UART_H
9
10#define DT_UART_DCC_COMPAT "arm,dcc"
Maheedhar Bollapalli6775ec42024-03-19 22:19:28 +053011#define DT_UART_CAD_COMPAT "xlnx,zynqmp-uart"
12#define DT_UART_PL011_COMPAT "arm,pl011"
Prasad Kummarib72494e2023-09-19 22:15:05 +053013
Maheedhar Bollapalli6775ec42024-03-19 22:19:28 +053014/* Default console type is either CADENCE0 or CADENCE1 or PL011_0 or PL011_1
Prasad Kummari80232f72024-03-14 15:19:10 +053015 * Debug console type is DCC
Maheedhar Bollapalli6775ec42024-03-19 22:19:28 +053016 */
Michal Simek4e035e02024-09-10 14:53:18 +020017#define CONSOLE_NONE 0
18#define CONSOLE_CDNS 1
19#define CONSOLE_PL011 2
20#define CONSOLE_DCC 3
Maheedhar Bollapalli6775ec42024-03-19 22:19:28 +053021
22typedef struct console_hd {
Maheedhar Bollapalli6775ec42024-03-19 22:19:28 +053023 uint32_t clk;
24 uint32_t baud_rate;
25 uintptr_t base;
26 uint32_t console_scope;
27 uint8_t console_type;
28} console_holder;
Prasad Kummari80232f72024-03-14 15:19:10 +053029
Prasad Kummarib72494e2023-09-19 22:15:05 +053030typedef struct dt_uart_info_s {
31 char compatible[30];
32 uintptr_t base;
33 uint32_t baud_rate;
Maheedhar Bollapalli6775ec42024-03-19 22:19:28 +053034 uint8_t console_type;
Prasad Kummarib72494e2023-09-19 22:15:05 +053035} dt_uart_info_t;
36
37void setup_console(void);
38
Prasad Kummarib72494e2023-09-19 22:15:05 +053039#endif /* PLAT_DT_UART_H */