1 /* 2 * Copyright (c) 2017-2019, Arm Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 /* ZynqMP IPI mailbox doorbell service enums and defines */ 8 9 #ifndef IPI_MAILBOX_SVC_H 10 #define IPI_MAILBOX_SVC_H 11 12 #include <stdint.h> 13 14 /********************************************************************* 15 * Enum definitions 16 ********************************************************************/ 17 18 /* IPI SMC function numbers enum definition */ 19 enum ipi_api_id { 20 /* IPI mailbox operations functions: */ 21 IPI_MAILBOX_OPEN = 0x1000, 22 IPI_MAILBOX_RELEASE, 23 IPI_MAILBOX_STATUS_ENQUIRY, 24 IPI_MAILBOX_NOTIFY, 25 IPI_MAILBOX_ACK, 26 IPI_MAILBOX_ENABLE_IRQ, 27 IPI_MAILBOX_DISABLE_IRQ 28 }; 29 30 /********************************************************************* 31 * IPI mailbox service APIs declarations 32 ********************************************************************/ 33 34 /* IPI SMC handler */ 35 uint64_t ipi_smc_handler(uint32_t smc_fid, uint64_t x1, uint64_t x2, 36 uint64_t x3, uint64_t x4, const void *cookie, void *handle, 37 uint64_t flags); 38 39 #endif /* IPI_MAILBOX_SVC_H */ 40