1 /* SPDX-License-Identifier: BSD-2-Clause */ 2 /* 3 * Copyright (c) 2015, Linaro Limited 4 * Copyright (c) 2014, STMicroelectronics International N.V. 5 */ 6 7 #ifndef TEE_ENTRY_FAST_H 8 #define TEE_ENTRY_FAST_H 9 10 #include <kernel/thread.h> 11 12 /* These functions are overridable by the specific target */ 13 void tee_entry_get_api_call_count(struct thread_smc_args *args); 14 void tee_entry_get_api_uuid(struct thread_smc_args *args); 15 void tee_entry_get_api_revision(struct thread_smc_args *args); 16 void tee_entry_get_os_uuid(struct thread_smc_args *args); 17 void tee_entry_get_os_revision(struct thread_smc_args *args); 18 19 /* 20 * Returns the number of calls recognized by tee_entry(). Used by the 21 * specific target to calculate the total number of supported calls when 22 * overriding tee_entry_get_api_call_count(). 23 */ 24 size_t tee_entry_generic_get_api_call_count(void); 25 26 /* 27 * Fast call entry, __weak, overridable. If overridden should call 28 * __tee_entry_fast() at the end in order to handle the standard functions. 29 */ 30 void tee_entry_fast(struct thread_smc_args *args); 31 void __tee_entry_fast(struct thread_smc_args *args); 32 33 #endif /* TEE_ENTRY_FAST_H */ 34