blob: aa8968ebb88d345c3b485fd94933ebf5e17f1e4c [file] [log] [blame]
Wendy Liang3aebacf2017-09-13 11:02:42 -07001/*
Michal Simek2a47faa2023-04-14 08:43:51 +02002 * Copyright (c) 2017-2018, Arm Limited and Contributors. All rights reserved.
Michal Simek9a8da502023-04-25 14:04:02 +02003 * Copyright (c) 2019-2022, Xilinx, Inc. All rights reserved.
4 * Copyright (c) 2022-2023, Advanced Micro Devices, Inc. All rights reserved.
Wendy Liang3aebacf2017-09-13 11:02:42 -07005 *
6 * SPDX-License-Identifier: BSD-3-Clause
7 */
8
9/* ZynqMP IPI management enums and defines */
10
Jolly Shah4c172372019-01-08 11:21:29 -080011#ifndef PLAT_IPI_H
12#define PLAT_IPI_H
Wendy Liang3aebacf2017-09-13 11:02:42 -070013
14#include <stdint.h>
Jolly Shah2f952be2019-01-08 11:27:36 -080015#include <ipi.h>
Wendy Liang3aebacf2017-09-13 11:02:42 -070016
17/*********************************************************************
18 * IPI agent IDs macros
19 ********************************************************************/
20#define IPI_ID_APU 0U
21#define IPI_ID_RPU0 1U
22#define IPI_ID_RPU1 2U
23#define IPI_ID_PMU0 3U
24#define IPI_ID_PMU1 4U
25#define IPI_ID_PMU2 5U
26#define IPI_ID_PMU3 6U
27#define IPI_ID_PL0 7U
28#define IPI_ID_PL1 8U
29#define IPI_ID_PL2 9U
30#define IPI_ID_PL3 10U
31
32/*********************************************************************
Jolly Shah259afe52019-01-09 12:37:57 -080033 * IPI message buffers
34 ********************************************************************/
35#define IPI_BUFFER_BASEADDR 0xFF990000U
36
Michal Simek9a8da502023-04-25 14:04:02 +020037#define IPI_BUFFER_LOCAL_BASE (IPI_BUFFER_BASEADDR + 0x400U)
38#define IPI_BUFFER_REMOTE_BASE (IPI_BUFFER_BASEADDR + 0xE00U)
Jolly Shah259afe52019-01-09 12:37:57 -080039
40#define IPI_BUFFER_TARGET_LOCAL_OFFSET 0x80U
41#define IPI_BUFFER_TARGET_REMOTE_OFFSET 0x1C0U
42
HariBabu Gattemaa811712022-10-07 00:07:49 -070043#define IPI_BUFFER_MAX_WORDS 8U
Jolly Shah259afe52019-01-09 12:37:57 -080044
45#define IPI_BUFFER_REQ_OFFSET 0x0U
46#define IPI_BUFFER_RESP_OFFSET 0x20U
47
48/*********************************************************************
Jolly Shahc2583ab2019-01-08 11:31:49 -080049 * Platform specific IPI API declarations
Wendy Liang3aebacf2017-09-13 11:02:42 -070050 ********************************************************************/
Wendy Liang3aebacf2017-09-13 11:02:42 -070051
Jolly Shah2f952be2019-01-08 11:27:36 -080052/* Configure IPI table for zynqmp */
53void zynqmp_ipi_config_table_init(void);
54
Jolly Shah4c172372019-01-08 11:21:29 -080055#endif /* PLAT_IPI_H */