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