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 #include <lib/xlat_tables/xlat_tables.h>
17 
18 void zynqmp_config_setup(void);
19 
20 const mmap_region_t *plat_get_mmap(void);
21 
22 uint32_t zynqmp_calc_core_pos(u_register_t mpidr);
23 
24 /* ZynqMP specific functions */
25 uint32_t get_uart_clk(void);
26 uint32_t zynqmp_get_bootmode(void);
27 
28 #if ZYNQMP_WDT_RESTART
29 typedef struct zynqmp_intr_info_type_el3 {
30 	uint32_t id;
31 	interrupt_type_handler_t handler;
32 } zynmp_intr_info_type_el3_t;
33 
34 /*
35  * Register handler to specific GIC entrance
36  * for INTR_TYPE_EL3 type of interrupt
37  */
38 int request_intr_type_el3(uint32_t, interrupt_type_handler_t);
39 #endif
40 
41 #endif /* PLAT_PRIVATE_H */
42