blob: 7a8a3eba5e0fa56e457657d26a1c24f3b2c97c5a [file] [log] [blame]
Antonio Nino Diaz35b37f02018-01-08 17:33:34 +00001/*
2 * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef __MM_SVC_H__
8#define __MM_SVC_H__
9
10#include <utils_def.h>
11
12#define MM_VERSION_MAJOR U(1)
13#define MM_VERSION_MAJOR_SHIFT 16
14#define MM_VERSION_MAJOR_MASK U(0x7FFF)
15#define MM_VERSION_MINOR U(0)
16#define MM_VERSION_MINOR_SHIFT 0
17#define MM_VERSION_MINOR_MASK U(0xFFFF)
18#define MM_VERSION_FORM(major, minor) ((major << MM_VERSION_MAJOR_SHIFT) | (minor))
19#define MM_VERSION_COMPILED MM_VERSION_FORM(MM_VERSION_MAJOR, MM_VERSION_MINOR)
20
21/*
22 * SMC IDs defined in [1] for accessing MM services from the Non-secure world.
23 * These FIDs occupy the range 0x40 - 0x5f.
24 * [1] DEN0060A_ARM_MM_Interface_Specification.pdf
25 */
26#define MM_VERSION_AARCH32 U(0x84000040)
27
28#define MM_COMMUNICATE_AARCH64 U(0xC4000041)
29#define MM_COMMUNICATE_AARCH32 U(0x84000041)
30
31#endif /* __MM_SVC_H__ */