1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright(c) 2020, Intel Corporation. All rights reserved.
4  */
5 
6 #ifndef __INTEL_PXP_TEE_INTERFACE_H__
7 #define __INTEL_PXP_TEE_INTERFACE_H__
8 
9 #include <linux/types.h>
10 
11 #define PXP_TEE_APIVER 0x40002
12 #define PXP_TEE_ARB_CMDID 0x1e
13 #define PXP_TEE_ARB_PROTECTION_MODE 0x2
14 
15 /* PXP TEE message header */
16 struct pxp_tee_cmd_header {
17 	u32 api_version;
18 	u32 command_id;
19 	u32 status;
20 	/* Length of the message (excluding the header) */
21 	u32 buffer_len;
22 } __packed;
23 
24 /* PXP TEE message input to create a arbitrary session */
25 struct pxp_tee_create_arb_in {
26 	struct pxp_tee_cmd_header header;
27 	u32 protection_mode;
28 	u32 session_id;
29 } __packed;
30 
31 /* PXP TEE message output to create a arbitrary session */
32 struct pxp_tee_create_arb_out {
33 	struct pxp_tee_cmd_header header;
34 } __packed;
35 
36 #endif /* __INTEL_PXP_TEE_INTERFACE_H__ */
37