ipi_mailbox_svc.h 1.1 KB

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