blob: 08a54107acf6ffc38fac4efb03a56f16b9202a65 [file] [log] [blame]
Soren Brinkmann76fcae32016-03-06 20:16:27 -08001/*
2 * Copyright (c) 2014-2016, ARM Limited and Contributors. All rights reserved.
3 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Soren Brinkmann76fcae32016-03-06 20:16:27 -08005 */
6
7#ifndef __ZYNQMP_PRIVATE_H__
8#define __ZYNQMP_PRIVATE_H__
9
Wendy Liang36703e22017-11-10 15:55:16 -080010#include <bl_common.h>
Soren Brinkmann76fcae32016-03-06 20:16:27 -080011#include <interrupt_mgmt.h>
12
13void zynqmp_config_setup(void);
14
15/* ZynqMP specific functions */
16unsigned int zynqmp_get_uart_clk(void);
Soren Brinkmannb43d9432016-04-18 11:49:42 -070017unsigned int zynqmp_get_bootmode(void);
Soren Brinkmann76fcae32016-03-06 20:16:27 -080018
Michal Simekef8f5592015-06-15 14:22:50 +020019/* For FSBL handover */
Siva Durga Prasad Paladugu8f499722018-05-17 15:17:46 +053020enum fsbl_handoff {
21 FSBL_HANDOFF_SUCCESS = 0,
22 FSBL_HANDOFF_NO_STRUCT,
23 FSBL_HANDOFF_INVAL_STRUCT,
24 FSBL_HANDOFF_TOO_MANY_PARTS,
25};
26
Siva Durga Prasad Paladuguefd431b2018-04-30 20:12:12 +053027#if ZYNQMP_WDT_RESTART
28/*
29 * Register handler to specific GIC entrance
30 * for INTR_TYPE_EL3 type of interrupt
31 */
32int request_intr_type_el3(uint32_t, interrupt_type_handler_t);
33#endif
34
Siva Durga Prasad Paladugu8f499722018-05-17 15:17:46 +053035enum fsbl_handoff fsbl_atf_handover(entry_point_info_t *bl32_image_ep_info,
Michal Simekef8f5592015-06-15 14:22:50 +020036 entry_point_info_t *bl33_image_ep_info);
37
Soren Brinkmann76fcae32016-03-06 20:16:27 -080038#endif /* __ZYNQMP_PRIVATE_H__ */