blob: afa102d870b9843a88e013f27d55e812ea213167 [file] [log] [blame]
Soren Brinkmann76fcae32016-03-06 20:16:27 -08001/*
Michal Simek2a47faa2023-04-14 08:43:51 +02002 * Copyright (c) 2014-2020, Arm Limited and Contributors. All rights reserved.
Prasad Kummarieeef80d2023-05-11 14:58:13 +05303 * Copyright (c) 2023, Advanced Micro Devices, Inc. All rights reserved.
Soren Brinkmann76fcae32016-03-06 20:16:27 -08004 *
dp-armfa3cf0b2017-05-03 09:38:09 +01005 * SPDX-License-Identifier: BSD-3-Clause
Soren Brinkmann76fcae32016-03-06 20:16:27 -08006 */
7
Jolly Shah0bfd7002019-01-08 11:10:47 -08008#ifndef PLAT_PRIVATE_H
9#define PLAT_PRIVATE_H
Soren Brinkmann76fcae32016-03-06 20:16:27 -080010
Antonio Nino Diazea3c4de2018-10-17 16:46:41 +010011#include <stdint.h>
Soren Brinkmann76fcae32016-03-06 20:16:27 -080012
Antonio Nino Diaze0f90632018-12-14 00:18:21 +000013#include <bl31/interrupt_mgmt.h>
14#include <common/bl_common.h>
Ambroise Vincent53f193f2019-05-29 11:46:08 +010015#include <drivers/cadence/cdns_uart.h>
Prasad Kummari0b377142023-10-26 16:32:26 +053016#include <lib/xlat_tables/xlat_tables.h>
Antonio Nino Diaze0f90632018-12-14 00:18:21 +000017
Soren Brinkmann76fcae32016-03-06 20:16:27 -080018void zynqmp_config_setup(void);
19
Prasad Kummari0b377142023-10-26 16:32:26 +053020const mmap_region_t *plat_get_mmap(void);
21
Venkatesh Yadav Abbarapue7c45382022-05-19 14:49:49 +053022uint32_t zynqmp_calc_core_pos(u_register_t mpidr);
Antonio Nino Diazea3c4de2018-10-17 16:46:41 +010023
Soren Brinkmann76fcae32016-03-06 20:16:27 -080024/* ZynqMP specific functions */
Michal Simekc56e5482023-09-27 13:58:06 +020025uint32_t get_uart_clk(void);
Venkatesh Yadav Abbarapue7c45382022-05-19 14:49:49 +053026uint32_t zynqmp_get_bootmode(void);
Soren Brinkmann76fcae32016-03-06 20:16:27 -080027
Siva Durga Prasad Paladuguefd431b2018-04-30 20:12:12 +053028#if ZYNQMP_WDT_RESTART
Prasad Kummarieeef80d2023-05-11 14:58:13 +053029typedef struct zynqmp_intr_info_type_el3 {
30 uint32_t id;
31 interrupt_type_handler_t handler;
32} zynmp_intr_info_type_el3_t;
33
Siva Durga Prasad Paladuguefd431b2018-04-30 20:12:12 +053034/*
35 * Register handler to specific GIC entrance
36 * for INTR_TYPE_EL3 type of interrupt
37 */
38int request_intr_type_el3(uint32_t, interrupt_type_handler_t);
39#endif
40
Jolly Shah0bfd7002019-01-08 11:10:47 -080041#endif /* PLAT_PRIVATE_H */