87 lines
3.6 KiB
Diff
87 lines
3.6 KiB
Diff
|
--- third_party/libva_protected_content/va_protected_content.h
|
||
|
+++ third_party/libva_protected_content/va_protected_content.h
|
||
|
@@ -132,19 +132,6 @@
|
||
|
#define VA_PC_SAMPLE_TYPE_FULLSAMPLE 0x00000001
|
||
|
#define VA_PC_SAMPLE_TYPE_SUBSAMPLE 0x00000002
|
||
|
|
||
|
-/** \brief TeeExec Function Codes. */
|
||
|
-typedef enum _VA_TEE_EXEC_FUNCTION_ID {
|
||
|
- VA_TEE_EXEC_TEE_FUNCID_PASS_THROUGH_NONE = 0x0,
|
||
|
-
|
||
|
- // 0x40000000~0x400000FFF reserved for TEE Exec GPU function
|
||
|
- VA_TEE_EXEC_GPU_FUNCID_ENCRYPTION_BLT = 0x40000000,
|
||
|
- VA_TEE_EXEC_GPU_FUNCID_DECRYPTION_BLT = 0x40000001,
|
||
|
-
|
||
|
- // 0x40001000~0x400001FFF reserved for TEE Exec TEE function
|
||
|
- VA_TEE_EXEC_TEE_FUNCID_PASS_THROUGH = 0x40001000,
|
||
|
-
|
||
|
-} VA_TEE_EXEC_FUNCTION_ID;
|
||
|
-
|
||
|
/** \brief values for the encryption return status. */
|
||
|
typedef enum {
|
||
|
/** \brief Indicate encryption operation is successful.*/
|
||
|
@@ -159,63 +146,6 @@
|
||
|
VA_ENCRYPTION_STATUS_UNSUPPORT
|
||
|
} VAEncryptionStatus;
|
||
|
|
||
|
-/** \brief structure for encrypted segment info. */
|
||
|
-typedef struct _VAEncryptionSegmentInfo {
|
||
|
- /** \brief The offset relative to the start of the bitstream input in
|
||
|
- * bytes of the start of the segment*/
|
||
|
- uint32_t segment_start_offset;
|
||
|
- /** \brief The length of the segments in bytes*/
|
||
|
- uint32_t segment_length;
|
||
|
- /** \brief The length in bytes of the remainder of an incomplete block
|
||
|
- * from a previous segment*/
|
||
|
- uint32_t partial_aes_block_size;
|
||
|
- /** \brief The length in bytes of the initial clear data */
|
||
|
- uint32_t init_byte_length;
|
||
|
- /** \brief This will be AES 128 counter for secure decode and secure
|
||
|
- * encode when numSegments equals 1 */
|
||
|
- uint8_t aes_cbc_iv_or_ctr[16];
|
||
|
- /** \brief Reserved bytes for future use, must be zero */
|
||
|
- uint32_t va_reserved[VA_PADDING_MEDIUM];
|
||
|
-} VAEncryptionSegmentInfo;
|
||
|
-
|
||
|
-/** \brief encryption parameters, corresponding to
|
||
|
- * #VAEncryptionParameterBufferType*/
|
||
|
-typedef struct _VAEncryptionParameters {
|
||
|
- /** \brief Encryption type, attribute values. */
|
||
|
- uint32_t encryption_type;
|
||
|
- /** \brief The number of sengments */
|
||
|
- uint32_t num_segments;
|
||
|
- /** \brief Pointer of segments */
|
||
|
- VAEncryptionSegmentInfo* segment_info;
|
||
|
- /** \brief The status report index for CENC workload.
|
||
|
- * The value is to indicate CENC workload and needs to be
|
||
|
- * different for each CENC workload */
|
||
|
- uint32_t status_report_index;
|
||
|
- /** \brief CENC counter length */
|
||
|
- uint32_t size_of_length;
|
||
|
- /** \brief Wrapped decrypt blob (Snd)kb */
|
||
|
- uint8_t wrapped_decrypt_blob[16];
|
||
|
- /** \brief Wrapped Key blob info (Sne)kb */
|
||
|
- uint8_t wrapped_encrypt_blob[16];
|
||
|
- /** \brief Indicates the number of 16-byte BLOCKS that are encrypted in any
|
||
|
- * given encrypted region of segments.
|
||
|
- * If this value is zero:
|
||
|
- * 1. All bytes in encrypted region of segments are encrypted, i.e. the
|
||
|
- * CENC or CBC1 scheme is being used
|
||
|
- * 2. blocks_stripe_clear must also be zero.
|
||
|
- * If this value is non-zero, blocks_stripe_clear must also be non-zero. */
|
||
|
- uint32_t blocks_stripe_encrypted;
|
||
|
- /** \brief Indicates the number of 16-byte BLOCKS that are clear in any given
|
||
|
- * encrypted region of segments, as defined by the CENS and CBCS schemes in
|
||
|
- * the common encryption spec.
|
||
|
- * If this value is zero, all bytes in encrypted region of segments are
|
||
|
- * encrypted, i.e. the CENC or CBC1 scheme is being used.
|
||
|
- */
|
||
|
- uint32_t blocks_stripe_clear;
|
||
|
- /** \brief Reserved bytes for future use, must be zero */
|
||
|
- uint32_t va_reserved[VA_PADDING_MEDIUM];
|
||
|
-} VAEncryptionParameters;
|
||
|
-
|
||
|
/** \brief structure for VA_TEE_EXEC_GPU_FUNCID_ENCRYPTION_BLT */
|
||
|
typedef struct _VA_PROTECTED_BLT_PARAMS {
|
||
|
uint8_t* src_resource; // The source resource which contains the clear data.
|