gralloc: Add metadata type buffer_type

CRs-Fixed: 2730864
Change-Id: I8f96b5dc905f1b8cedc498d3853be27a8f92ae58
This commit is contained in:
Tharaga Balachandran
2020-04-22 16:40:30 -04:00
parent 3981046acc
commit bcd39b9ab9
3 changed files with 10 additions and 0 deletions

View File

@@ -202,6 +202,8 @@ MetadataType getMetadataType(uint32_t in) {
return MetadataType_StandardMetadataStatus; return MetadataType_StandardMetadataStatus;
case QTI_VENDOR_METADATA_STATUS: case QTI_VENDOR_METADATA_STATUS:
return MetadataType_VendorMetadataStatus; return MetadataType_VendorMetadataStatus;
case QTI_BUFFER_TYPE:
return MetadataType_BufferType;
default: default:
return MetadataType_Invalid; return MetadataType_Invalid;
} }
@@ -291,6 +293,10 @@ Error get(void *buffer, uint32_t type, void *param) {
case QTI_VENDOR_METADATA_STATUS: case QTI_VENDOR_METADATA_STATUS:
err = decodeMetadataState(bytestream, (bool *)param); err = decodeMetadataState(bytestream, (bool *)param);
break; break;
case QTI_BUFFER_TYPE:
err = static_cast<Error>(android::gralloc4::decodeUint32(
qtigralloc::MetadataType_BufferType, bytestream, (uint32_t *)param));
break;
default: default:
param = nullptr; param = nullptr;
return Error::UNSUPPORTED; return Error::UNSUPPORTED;

View File

@@ -109,6 +109,9 @@ static const MetadataType MetadataType_StandardMetadataStatus = {VENDOR_QTI,
static const MetadataType MetadataType_VendorMetadataStatus = {VENDOR_QTI, static const MetadataType MetadataType_VendorMetadataStatus = {VENDOR_QTI,
QTI_VENDOR_METADATA_STATUS}; QTI_VENDOR_METADATA_STATUS};
static const MetadataType MetadataType_BufferType = {VENDOR_QTI,
QTI_BUFFER_TYPE};
// 0 is also used as invalid value in standard metadata // 0 is also used as invalid value in standard metadata
static const MetadataType MetadataType_Invalid = {VENDOR_QTI, 0}; static const MetadataType MetadataType_Invalid = {VENDOR_QTI, 0};

View File

@@ -55,6 +55,7 @@
// Indicates whether metadata is using default value or has been set // Indicates whether metadata is using default value or has been set
#define QTI_STANDARD_METADATA_STATUS 10016 #define QTI_STANDARD_METADATA_STATUS 10016
#define QTI_VENDOR_METADATA_STATUS 10017 #define QTI_VENDOR_METADATA_STATUS 10017
#define QTI_BUFFER_TYPE 10018
// Used to indicate to framework that internal definitions are used instead // Used to indicate to framework that internal definitions are used instead
#define COMPRESSION_QTI_UBWC 20001 #define COMPRESSION_QTI_UBWC 20001