xref: /rk3399_ARM-atf/plat/xilinx/zynqmp/include/plat_private.h (revision dd9fae1ce0e7b985c9fe8f8f8ae358b8c166c6a9)
1 /*
2  * Copyright (c) 2014-2020, Arm Limited and Contributors. All rights reserved.
3  * Copyright (c) 2023, Advanced Micro Devices, Inc. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #ifndef PLAT_PRIVATE_H
9 #define PLAT_PRIVATE_H
10 
11 #include <stdint.h>
12 
13 #include <bl31/interrupt_mgmt.h>
14 #include <common/bl_common.h>
15 #include <drivers/cadence/cdns_uart.h>
16 
17 void zynqmp_config_setup(void);
18 
19 uint32_t zynqmp_calc_core_pos(u_register_t mpidr);
20 
21 /* ZynqMP specific functions */
22 uint32_t zynqmp_get_uart_clk(void);
23 uint32_t zynqmp_get_bootmode(void);
24 
25 #if ZYNQMP_WDT_RESTART
26 typedef struct zynqmp_intr_info_type_el3 {
27 	uint32_t id;
28 	interrupt_type_handler_t handler;
29 } zynmp_intr_info_type_el3_t;
30 
31 /*
32  * Register handler to specific GIC entrance
33  * for INTR_TYPE_EL3 type of interrupt
34  */
35 int request_intr_type_el3(uint32_t, interrupt_type_handler_t);
36 #endif
37 
38 #endif /* PLAT_PRIVATE_H */
39