1 /* SPDX-License-Identifier: BSD-2-Clause */ 2 /* 3 * Copyright (c) 2014, STMicroelectronics International N.V. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are met: 8 * 9 * 1. Redistributions of source code must retain the above copyright notice, 10 * this list of conditions and the following disclaimer. 11 * 12 * 2. Redistributions in binary form must reproduce the above copyright notice, 13 * this list of conditions and the following disclaimer in the documentation 14 * and/or other materials provided with the distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26 * POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 #ifndef TEE_SYSCALL_NUMBERS_H 30 #define TEE_SYSCALL_NUMBERS_H 31 32 #define TEE_SCN_RETURN 0 33 #define TEE_SCN_LOG 1 34 #define TEE_SCN_PANIC 2 35 #define TEE_SCN_GET_PROPERTY 3 36 #define TEE_SCN_GET_PROPERTY_NAME_TO_INDEX 4 37 #define TEE_SCN_OPEN_TA_SESSION 5 38 #define TEE_SCN_CLOSE_TA_SESSION 6 39 #define TEE_SCN_INVOKE_TA_COMMAND 7 40 #define TEE_SCN_CHECK_ACCESS_RIGHTS 8 41 #define TEE_SCN_GET_CANCELLATION_FLAG 9 42 #define TEE_SCN_UNMASK_CANCELLATION 10 43 #define TEE_SCN_MASK_CANCELLATION 11 44 #define TEE_SCN_WAIT 12 45 #define TEE_SCN_GET_TIME 13 46 #define TEE_SCN_SET_TA_TIME 14 47 #define TEE_SCN_CRYP_STATE_ALLOC 15 48 #define TEE_SCN_CRYP_STATE_COPY 16 49 #define TEE_SCN_CRYP_STATE_FREE 17 50 #define TEE_SCN_HASH_INIT 18 51 #define TEE_SCN_HASH_UPDATE 19 52 #define TEE_SCN_HASH_FINAL 20 53 #define TEE_SCN_CIPHER_INIT 21 54 #define TEE_SCN_CIPHER_UPDATE 22 55 #define TEE_SCN_CIPHER_FINAL 23 56 #define TEE_SCN_CRYP_OBJ_GET_INFO 24 57 #define TEE_SCN_CRYP_OBJ_RESTRICT_USAGE 25 58 #define TEE_SCN_CRYP_OBJ_GET_ATTR 26 59 #define TEE_SCN_CRYP_OBJ_ALLOC 27 60 #define TEE_SCN_CRYP_OBJ_CLOSE 28 61 #define TEE_SCN_CRYP_OBJ_RESET 29 62 #define TEE_SCN_CRYP_OBJ_POPULATE 30 63 #define TEE_SCN_CRYP_OBJ_COPY 31 64 #define TEE_SCN_CRYP_DERIVE_KEY 32 65 #define TEE_SCN_CRYP_RANDOM_NUMBER_GENERATE 33 66 #define TEE_SCN_AUTHENC_INIT 34 67 #define TEE_SCN_AUTHENC_UPDATE_AAD 35 68 #define TEE_SCN_AUTHENC_UPDATE_PAYLOAD 36 69 #define TEE_SCN_AUTHENC_ENC_FINAL 37 70 #define TEE_SCN_AUTHENC_DEC_FINAL 38 71 #define TEE_SCN_ASYMM_OPERATE 39 72 #define TEE_SCN_ASYMM_VERIFY 40 73 #define TEE_SCN_STORAGE_OBJ_OPEN 41 74 #define TEE_SCN_STORAGE_OBJ_CREATE 42 75 #define TEE_SCN_STORAGE_OBJ_DEL 43 76 #define TEE_SCN_STORAGE_OBJ_RENAME 44 77 #define TEE_SCN_STORAGE_ENUM_ALLOC 45 78 #define TEE_SCN_STORAGE_ENUM_FREE 46 79 #define TEE_SCN_STORAGE_ENUM_RESET 47 80 #define TEE_SCN_STORAGE_ENUM_START 48 81 #define TEE_SCN_STORAGE_ENUM_NEXT 49 82 #define TEE_SCN_STORAGE_OBJ_READ 50 83 #define TEE_SCN_STORAGE_OBJ_WRITE 51 84 #define TEE_SCN_STORAGE_OBJ_TRUNC 52 85 #define TEE_SCN_STORAGE_OBJ_SEEK 53 86 #define TEE_SCN_CRYP_OBJ_GENERATE_KEY 54 87 #define TEE_SCN_SE_SERVICE_OPEN 55 88 #define TEE_SCN_SE_SERVICE_CLOSE 56 89 #define TEE_SCN_SE_SERVICE_GET_READERS 57 90 #define TEE_SCN_SE_READER_GET_PROP 58 91 #define TEE_SCN_SE_READER_GET_NAME 59 92 #define TEE_SCN_SE_READER_OPEN_SESSION 60 93 #define TEE_SCN_SE_READER_CLOSE_SESSIONS 61 94 #define TEE_SCN_SE_SESSION_IS_CLOSED 62 95 #define TEE_SCN_SE_SESSION_GET_ATR 63 96 #define TEE_SCN_SE_SESSION_OPEN_CHANNEL 64 97 #define TEE_SCN_SE_SESSION_CLOSE 65 98 #define TEE_SCN_SE_CHANNEL_SELECT_NEXT 66 99 #define TEE_SCN_SE_CHANNEL_GET_SELECT_RESP 67 100 #define TEE_SCN_SE_CHANNEL_TRANSMIT 68 101 #define TEE_SCN_SE_CHANNEL_CLOSE 69 102 #define TEE_SCN_CACHE_OPERATION 70 103 104 #define TEE_SCN_MAX 70 105 106 /* Maximum number of allowed arguments for a syscall */ 107 #define TEE_SVC_MAX_ARGS 8 108 109 #endif /* TEE_SYSCALL_NUMBERS_H */ 110