1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /*
3  * Copyright (c) 2014, STMicroelectronics International N.V.
4  * All rights reserved.
5  */
6 
7 #ifndef CRYP_TAF_H
8 #define CRYP_TAF_H
9 
10 #include <tee_api.h>
11 
12 TEE_Result ta_entry_allocate_operation(uint32_t param_type, TEE_Param params[4]
13 );
14 
15 TEE_Result ta_entry_free_operation(uint32_t param_type, TEE_Param params[4]
16 );
17 
18 TEE_Result ta_entry_get_operation_info(uint32_t param_type, TEE_Param params[4]
19 );
20 
21 TEE_Result ta_entry_reset_operation(uint32_t param_type, TEE_Param params[4]);
22 
23 TEE_Result ta_entry_set_operation_key(uint32_t param_type, TEE_Param params[4]
24 );
25 
26 TEE_Result ta_entry_set_operation_key2(uint32_t param_type, TEE_Param params[4]
27 );
28 
29 TEE_Result ta_entry_copy_operation(uint32_t param_type, TEE_Param params[4]);
30 
31 TEE_Result ta_entry_digest_update(uint32_t param_type, TEE_Param params[4]);
32 
33 TEE_Result ta_entry_digest_do_final(uint32_t param_type, TEE_Param params[4]);
34 
35 TEE_Result ta_entry_cipher_init(uint32_t param_type, TEE_Param params[4]);
36 
37 TEE_Result ta_entry_cipher_update(uint32_t param_type, TEE_Param params[4]);
38 
39 TEE_Result ta_entry_cipher_do_final(uint32_t param_type, TEE_Param params[4]);
40 
41 TEE_Result ta_entry_mac_init(uint32_t param_type, TEE_Param params[4]);
42 
43 TEE_Result ta_entry_mac_update(uint32_t param_type, TEE_Param params[4]);
44 
45 TEE_Result ta_entry_mac_final_compute(uint32_t param_type, TEE_Param params[4]);
46 
47 TEE_Result ta_entry_mac_final_compare(uint32_t param_type, TEE_Param params[4]);
48 
49 TEE_Result ta_entry_allocate_transient_object(uint32_t param_type,
50 					      TEE_Param params[4]);
51 
52 TEE_Result ta_entry_free_transient_object(uint32_t param_type,
53 					  TEE_Param params[4]);
54 
55 TEE_Result ta_entry_reset_transient_object(uint32_t param_type,
56 					   TEE_Param params[4]);
57 
58 TEE_Result ta_entry_populate_transient_object(uint32_t param_type,
59 					      TEE_Param params[4]);
60 
61 TEE_Result ta_entry_copy_object_attributes(uint32_t param_type,
62 					   TEE_Param params[4]);
63 
64 TEE_Result ta_entry_generate_key(uint32_t param_type, TEE_Param params[4]);
65 
66 TEE_Result ta_entry_asymmetric_encrypt(uint32_t param_type,
67 				       TEE_Param params[4]);
68 
69 TEE_Result ta_entry_asymmetric_decrypt(uint32_t param_type,
70 				       TEE_Param params[4]);
71 
72 TEE_Result ta_entry_asymmetric_sign_digest(uint32_t param_type,
73 					   TEE_Param params[4]);
74 
75 TEE_Result ta_entry_asymmetric_verify_digest(uint32_t param_type,
76 					     TEE_Param params[4]);
77 
78 TEE_Result ta_entry_derive_key(uint32_t param_type, TEE_Param params[4]);
79 
80 TEE_Result ta_entry_random_number_generate(uint32_t param_type,
81 					   TEE_Param params[4]);
82 
83 TEE_Result ta_entry_ae_init(uint32_t param_type, TEE_Param params[4]);
84 
85 TEE_Result ta_entry_ae_update_aad(uint32_t param_type, TEE_Param params[4]);
86 
87 TEE_Result ta_entry_ae_update(uint32_t param_type, TEE_Param params[4]);
88 
89 TEE_Result ta_entry_ae_encrypt_final(uint32_t param_type, TEE_Param params[4]);
90 
91 TEE_Result ta_entry_ae_decrypt_final(uint32_t param_type, TEE_Param params[4]);
92 
93 TEE_Result ta_entry_get_object_buffer_attribute(uint32_t param_type,
94 						TEE_Param params[4]);
95 
96 TEE_Result ta_entry_get_object_value_attribute(uint32_t param_type,
97 					       TEE_Param params[4]);
98 
99 TEE_Result ta_entry_is_algo_supported(uint32_t param_type, TEE_Param params[4]);
100 #endif /*CRYP_TAF_H */
101