11611ef2bSJolly Shah /* 21611ef2bSJolly Shah * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved. 31611ef2bSJolly Shah * 41611ef2bSJolly Shah * SPDX-License-Identifier: BSD-3-Clause 51611ef2bSJolly Shah */ 61611ef2bSJolly Shah 71611ef2bSJolly Shah /* ZynqMP IPI management enums and defines */ 81611ef2bSJolly Shah 91611ef2bSJolly Shah #ifndef PLAT_IPI_H 101611ef2bSJolly Shah #define PLAT_IPI_H 111611ef2bSJolly Shah 121611ef2bSJolly Shah #include <stdint.h> 13b8e39f49SJolly Shah #include <ipi.h> 141611ef2bSJolly Shah 151611ef2bSJolly Shah /********************************************************************* 161611ef2bSJolly Shah * IPI agent IDs macros 171611ef2bSJolly Shah ********************************************************************/ 181611ef2bSJolly Shah #define IPI_ID_APU 0U 191611ef2bSJolly Shah #define IPI_ID_RPU0 1U 201611ef2bSJolly Shah #define IPI_ID_RPU1 2U 211611ef2bSJolly Shah #define IPI_ID_PMU0 3U 221611ef2bSJolly Shah #define IPI_ID_PMU1 4U 231611ef2bSJolly Shah #define IPI_ID_PMU2 5U 241611ef2bSJolly Shah #define IPI_ID_PMU3 6U 251611ef2bSJolly Shah #define IPI_ID_PL0 7U 261611ef2bSJolly Shah #define IPI_ID_PL1 8U 271611ef2bSJolly Shah #define IPI_ID_PL2 9U 281611ef2bSJolly Shah #define IPI_ID_PL3 10U 291611ef2bSJolly Shah 301611ef2bSJolly Shah /********************************************************************* 3165c80d60SJolly Shah * IPI message buffers 3265c80d60SJolly Shah ********************************************************************/ 3365c80d60SJolly Shah #define IPI_BUFFER_BASEADDR 0xFF990000U 3465c80d60SJolly Shah 3565c80d60SJolly Shah #define IPI_BUFFER_APU_BASE (IPI_BUFFER_BASEADDR + 0x400U) 3665c80d60SJolly Shah #define IPI_BUFFER_PMU_BASE (IPI_BUFFER_BASEADDR + 0xE00U) 3765c80d60SJolly Shah 3865c80d60SJolly Shah #define IPI_BUFFER_LOCAL_BASE IPI_BUFFER_APU_BASE 3965c80d60SJolly Shah #define IPI_BUFFER_REMOTE_BASE IPI_BUFFER_PMU_BASE 4065c80d60SJolly Shah 4165c80d60SJolly Shah #define IPI_BUFFER_TARGET_LOCAL_OFFSET 0x80U 4265c80d60SJolly Shah #define IPI_BUFFER_TARGET_REMOTE_OFFSET 0x1C0U 4365c80d60SJolly Shah 44*590519a8SHariBabu Gattem #define IPI_BUFFER_MAX_WORDS 8U 4565c80d60SJolly Shah 4665c80d60SJolly Shah #define IPI_BUFFER_REQ_OFFSET 0x0U 4765c80d60SJolly Shah #define IPI_BUFFER_RESP_OFFSET 0x20U 4865c80d60SJolly Shah 4965c80d60SJolly Shah /********************************************************************* 5063436bdeSJolly Shah * Platform specific IPI API declarations 511611ef2bSJolly Shah ********************************************************************/ 521611ef2bSJolly Shah 53b8e39f49SJolly Shah /* Configure IPI table for zynqmp */ 54b8e39f49SJolly Shah void zynqmp_ipi_config_table_init(void); 55b8e39f49SJolly Shah 561611ef2bSJolly Shah #endif /* PLAT_IPI_H */ 57