blob: 8bdf4296771f9ad455aa77a605b81ffe440ac0f9 [file] [log] [blame]
Soren Brinkmann76fcae32016-03-06 20:16:27 -08001/*
Ambroise Vincent53f193f2019-05-29 11:46:08 +01002 * Copyright (c) 2014-2019, ARM Limited and Contributors. All rights reserved.
Soren Brinkmann76fcae32016-03-06 20:16:27 -08003 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Soren Brinkmann76fcae32016-03-06 20:16:27 -08005 */
6
Jolly Shah0bfd7002019-01-08 11:10:47 -08007#ifndef PLAT_PRIVATE_H
8#define PLAT_PRIVATE_H
Soren Brinkmann76fcae32016-03-06 20:16:27 -08009
Antonio Nino Diazea3c4de2018-10-17 16:46:41 +010010#include <stdint.h>
Soren Brinkmann76fcae32016-03-06 20:16:27 -080011
Antonio Nino Diaze0f90632018-12-14 00:18:21 +000012#include <bl31/interrupt_mgmt.h>
13#include <common/bl_common.h>
Ambroise Vincent53f193f2019-05-29 11:46:08 +010014#include <drivers/cadence/cdns_uart.h>
Antonio Nino Diaze0f90632018-12-14 00:18:21 +000015
Soren Brinkmann76fcae32016-03-06 20:16:27 -080016void zynqmp_config_setup(void);
17
Antonio Nino Diazea3c4de2018-10-17 16:46:41 +010018unsigned int zynqmp_calc_core_pos(u_register_t mpidr);
19
Soren Brinkmann76fcae32016-03-06 20:16:27 -080020/* ZynqMP specific functions */
21unsigned int zynqmp_get_uart_clk(void);
Soren Brinkmannb43d9432016-04-18 11:49:42 -070022unsigned int zynqmp_get_bootmode(void);
Soren Brinkmann76fcae32016-03-06 20:16:27 -080023
Michal Simekef8f5592015-06-15 14:22:50 +020024/* For FSBL handover */
Siva Durga Prasad Paladugu8f499722018-05-17 15:17:46 +053025enum fsbl_handoff {
26 FSBL_HANDOFF_SUCCESS = 0,
27 FSBL_HANDOFF_NO_STRUCT,
28 FSBL_HANDOFF_INVAL_STRUCT,
29 FSBL_HANDOFF_TOO_MANY_PARTS,
30};
31
Siva Durga Prasad Paladuguefd431b2018-04-30 20:12:12 +053032#if ZYNQMP_WDT_RESTART
33/*
34 * Register handler to specific GIC entrance
35 * for INTR_TYPE_EL3 type of interrupt
36 */
37int request_intr_type_el3(uint32_t, interrupt_type_handler_t);
38#endif
39
Siva Durga Prasad Paladugu8f499722018-05-17 15:17:46 +053040enum fsbl_handoff fsbl_atf_handover(entry_point_info_t *bl32_image_ep_info,
Michal Simekef8f5592015-06-15 14:22:50 +020041 entry_point_info_t *bl33_image_ep_info);
42
Jolly Shah0bfd7002019-01-08 11:10:47 -080043#endif /* PLAT_PRIVATE_H */