Merge "Merge "Respect the hardware buffer usage flags set by the consumer." into qt-dev am: 66846fe825" into qt-dev-plus-aosp

This commit is contained in:
Android Build Merger (Role)
2019-04-09 06:42:11 +00:00
committed by Android (Google) Code Review

View File

@@ -266,7 +266,8 @@ VulkanSurface* VulkanSurface::Create(ANativeWindow* window, ColorMode colorMode,
vkPixelFormat = VK_FORMAT_R16G16B16A16_SFLOAT; vkPixelFormat = VK_FORMAT_R16G16B16A16_SFLOAT;
} }
if (nullptr != vkManager.mGetPhysicalDeviceImageFormatProperties2) { LOG_ALWAYS_FATAL_IF(nullptr == vkManager.mGetPhysicalDeviceImageFormatProperties2,
"vkGetPhysicalDeviceImageFormatProperties2 is missing");
VkPhysicalDeviceExternalImageFormatInfo externalImageFormatInfo; VkPhysicalDeviceExternalImageFormatInfo externalImageFormatInfo;
externalImageFormatInfo.sType = externalImageFormatInfo.sType =
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO;
@@ -298,17 +299,15 @@ VulkanSurface* VulkanSurface::Create(ANativeWindow* window, ColorMode colorMode,
return nullptr; return nullptr;
} }
windowInfo.windowUsageFlags = hwbUsage.androidHardwareBufferUsage; uint64_t consumerUsage;
native_window_get_consumer_usage(window, &consumerUsage);
windowInfo.windowUsageFlags = consumerUsage | hwbUsage.androidHardwareBufferUsage;
if (vkManager.isQualcomm()) { if (vkManager.isQualcomm()) {
windowInfo.windowUsageFlags = windowInfo.windowUsageFlags =
windowInfo.windowUsageFlags | AHARDWAREBUFFER_USAGE_VENDOR_0; windowInfo.windowUsageFlags | AHARDWAREBUFFER_USAGE_VENDOR_0;
} }
} else {
ALOGE("VulkanSurface::Create() vkmGetPhysicalDeviceImageFormatProperties2 is missing");
return nullptr;
}
/* /*
* Now we attempt to modify the window! * Now we attempt to modify the window!
*/ */