bool supported = mDriver->is_supported(&crosDescriptor);
if (!supported) {
- crosDescriptor.use_flags &= ~BO_USE_SCANOUT;
+ crosDescriptor.use_flags &= ~(BO_USE_SCANOUT | BO_USE_COMPOSER_TARGET);
supported = mDriver->is_supported(&crosDescriptor);
}
PixelFormat pixelFormat = static_cast<PixelFormat>(crosHandle->droid_format);
status = android::gralloc4::encodePixelFormatRequested(pixelFormat, &encodedMetadata);
} else if (metadataType == android::gralloc4::MetadataType_PixelFormatFourCC) {
- uint32_t format = crosHandle->format;
- // Map internal fourcc codes back to standard fourcc codes.
- if (format == DRM_FORMAT_YVU420_ANDROID) {
- format = DRM_FORMAT_YVU420;
- }
- status = android::gralloc4::encodePixelFormatFourCC(format, &encodedMetadata);
+ status = android::gralloc4::encodePixelFormatFourCC(
+ drv_get_standard_fourcc(crosHandle->format), &encodedMetadata);
} else if (metadataType == android::gralloc4::MetadataType_PixelFormatModifier) {
status = android::gralloc4::encodePixelFormatModifier(crosHandle->format_modifier,
&encodedMetadata);
hidlCb(Error::BAD_VALUE, encodedMetadata);
return Void();
}
- status = android::gralloc4::encodePixelFormatFourCC(drmFormat, &encodedMetadata);
+ status = android::gralloc4::encodePixelFormatFourCC(drv_get_standard_fourcc(drmFormat),
+ &encodedMetadata);
} else if (metadataType == android::gralloc4::MetadataType_Usage) {
status = android::gralloc4::encodeUsage(descriptor.usage, &encodedMetadata);
} else if (metadataType == android::gralloc4::MetadataType_ProtectedContent) {