1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /*
3  * Copyright (c) 2023, The ChromiumOS Authors
4  */
5 
6 #ifndef __PTA_WIDEVINE_H
7 #define __PTA_WIDEVINE_H
8 
9 /*
10  * Interface to the widevine pseudo-TA, which is used for passing parameters
11  * for widevine TA.
12  */
13 #define PTA_WIDEVINE_UUID                                              \
14 	{                                                              \
15 		0x721f4da9, 0xda05, 0x40d4,                            \
16 		{                                                      \
17 			0xa1, 0xa3, 0x83, 0x77, 0xc1, 0xe0, 0x8b, 0x0a \
18 		}                                                      \
19 	}
20 
21 /*
22  * PTA_WIDEVINE_GET_TPM_PUBKEY - Get Widevine TPM public key
23  * PTA_WIDEVINE_GET_WIDEVINE_PRIVKEY - Get Widevine private key
24  *
25  * [out]     memref[0]        Retrieved key data
26  *
27  * Return codes:
28  * TEE_SUCCESS - Invoke command success
29  * TEE_ERROR_BAD_PARAMETERS - Incorrect parameters
30  * TEE_ERROR_SHORT_BUFFER - Output buffer size is too small
31  * TEE_ERROR_NO_DATA - Requested data not available
32  */
33 #define PTA_WIDEVINE_GET_TPM_PUBKEY 0
34 #define PTA_WIDEVINE_GET_WIDEVINE_PRIVKEY 1
35 
36 #endif /* __PTA_WIDEVINE_H */
37