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