1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2018 Linaro Limited
4  */
5 
6 #ifndef __SANDBOXTEE_H
7 #define __SANDBOXTEE_H
8 
9 #include <search.h>
10 #include <tee/optee_ta_avb.h>
11 
12 /**
13  * struct sandbox_tee_state - internal state of the sandbox TEE
14  * @session:			current open session
15  * @num_shms:			number of registered shared memory objects
16  * @ta:				Trusted Application of current session
17  * @ta_avb_rollback_indexes	TA avb rollback indexes storage
18  * @ta_avb_lock_state		TA avb lock state storage
19  * @pstorage_htab		named persistent values storage
20  */
21 struct sandbox_tee_state {
22 	u32 session;
23 	int num_shms;
24 	void *ta;
25 	u64 ta_avb_rollback_indexes[TA_AVB_MAX_ROLLBACK_LOCATIONS];
26 	u32 ta_avb_lock_state;
27 	struct hsearch_data pstorage_htab;
28 };
29 
30 #endif /*__SANDBOXTEE_H*/
31