blob: 1d3ddc2af1328b8cc2e938da565368ec3778d571 [file] [log] [blame]
Olivier Deprez6967c242021-04-09 09:24:08 +02001/*
2 * Copyright (c) 2021, Arm Limited. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef SPMC_H
8#define SPMC_H
9
10#include <ffa_helpers.h>
Manish Pandey58971b62020-09-21 21:10:38 +010011#include <spm_common.h>
Olivier Deprez6967c242021-04-09 09:24:08 +020012
13/* Should match with IDs defined in SPM/Hafnium */
Manish Pandey58971b62020-09-21 21:10:38 +010014#define SPM_INTERRUPT_ENABLE (0xFF03)
Olivier Deprez6967c242021-04-09 09:24:08 +020015#define SPM_INTERRUPT_GET (0xFF04)
Madhukar Pappireddy46d06d72021-08-05 15:21:46 -050016#define SPM_INTERRUPT_DEACTIVATE (0xFF08)
Olivier Deprez6967c242021-04-09 09:24:08 +020017
18/*
19 * Hypervisor Calls Wrappers
20 */
21
22uint32_t spm_interrupt_get(void);
Manish Pandey58971b62020-09-21 21:10:38 +010023int64_t spm_interrupt_enable(uint32_t int_id, bool enable, enum interrupt_pin pin);
Madhukar Pappireddy46d06d72021-08-05 15:21:46 -050024int64_t spm_interrupt_deactivate(uint32_t vint_id);
Olivier Deprez6967c242021-04-09 09:24:08 +020025
26#endif /* SPMC_H */