Antonio Nino Diaz | 35b37f0 | 2018-01-08 17:33:34 +0000 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. |
| 3 | * |
| 4 | * SPDX-License-Identifier: BSD-3-Clause |
| 5 | */ |
| 6 | |
Antonio Nino Diaz | 5eb8837 | 2018-11-08 10:20:19 +0000 | [diff] [blame] | 7 | #ifndef MM_SVC_H |
| 8 | #define MM_SVC_H |
Antonio Nino Diaz | 35b37f0 | 2018-01-08 17:33:34 +0000 | [diff] [blame] | 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 | |
Antonio Nino Diaz | 5eb8837 | 2018-11-08 10:20:19 +0000 | [diff] [blame] | 31 | #endif /* MM_SVC_H */ |