aboutsummaryrefslogtreecommitdiff
path: root/include/trustzone/tz_cross/ta_widevine.h
blob: 1cf6e62d265af73ee4c47f9223a45a8043dd6ecd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#ifndef __TRUSTZONE_TA_WIDEVINE__
#define __TRUSTZONE_TA_WIDEVINE__

#define TZ_TA_WIDEVINE_UUID   "ff33a6e0-8635-11e2-9e96-0800200c9a00"

/* Data Structure for Widevine TA */
/* You should define data structure used both in REE/TEE here
   N/A for Widevine TA */

/* Command for Widevine TA */

#define TZCMD_WIDEVINE_INIT                              1
#define TZCMD_WIDEVINE_TERMINATE                         2
#define TZCMD_WIDEVINE_SET_ENTITLEMENT_KEY               3
#define TZCMD_WIDEVINE_DEVICE_CONTROL                    4
#define TZCMD_WIDEVINE_DECRYPT_VIDEO                     5
#define TZCMD_WIDEVINE_DECRYPT_AUDIO                     6
#define TZCMD_WIDEVINE_INSTALL_KEYBOX                    7
#define TZCMD_WIDEVINE_IS_KEYBOX_VALID                   8
#define TZCMD_WIDEVINE_GET_DEVICE_ID                     9
#define TZCMD_WIDEVINE_GET_KEY_DATA                      10
#define TZCMD_WIDEVINE_RANDOM                            11
#define TZCMD_WIDEVINE_TEST                              12
#define TZCMD_WIDEVINE_READ_NAL                          13
//Disable or enable debug level log in tee
#define TZCMD_WIDEVINE_SET_DEBUG_LOG                     14

typedef enum TEE_MTK_CryptoResult
{
    TEE_MTK_Crypto_SUCCESS = 0,
    TEE_MTK_Crypto_ERROR_INIT_FAILED,
    TEE_MTK_Crypto_ERROR_TERMINATE_FAILED,
    TEE_MTK_Crypto_ERROR_ENTER_SECURE_PLAYBACK_FAILED,
    TEE_MTK_Crypto_ERROR_EXIT_SECURE_PLAYBACK_FAILED,
    TEE_MTK_Crypto_ERROR_SHORT_BUFFER,
    TEE_MTK_Crypto_ERROR_NO_DEVICE_KEY,
    TEE_MTK_Crypto_ERROR_NO_ASSET_KEY,
    TEE_MTK_Crypto_ERROR_KEYBOX_INVALID,
    TEE_MTK_Crypto_ERROR_NO_KEYDATA,
    TEE_MTK_Crypto_ERROR_NO_CW,
    TEE_MTK_Crypto_ERROR_DECRYPT_FAILED,
    TEE_MTK_Crypto_ERROR_WRITE_KEYBOX,
    TEE_MTK_Crypto_ERROR_WRAP_KEYBOX,
    TEE_MTK_Crypto_ERROR_BAD_MAGIC,
    TEE_MTK_Crypto_ERROR_BAD_CRC,
    TEE_MTK_Crypto_ERROR_NO_DEVICEID,
    TEE_MTK_Crypto_ERROR_RNG_FAILED,
    TEE_MTK_Crypto_ERROR_RNG_NOT_SUPPORTED,
    TEE_MTK_Crypto_ERROR_SETUP,
    TEE_MTK_Crypto_LEFT_NAL
} TEE_MTK_CryptoResult;
#endif /* __TRUSTZONE_TA_WIDEVINE__ */