summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author sergiuferentz <sergiuferentz@google.com> 2023-09-26 10:24:36 +0000
committer Sergiu Ferentz <sergiuferentz@google.com> 2023-10-03 16:13:33 +0000
commit47989334c20a2ff97716d279e1343208c00034a8 (patch)
tree5d584b7d5979b5e22ac68f0fe0ffeb1b56c99858
parentf3425fab505e8b86c39e510bd549b0a6f1e9f843 (diff)
Refactoring HAL Dataspace to AIDL Dataspace
Bug: 291142745 Test: Build Change-Id: Icfa9562f03d58c4cb8d90151c3c5a4617c404375
-rw-r--r--libs/gralloc/types/Gralloc4.cpp4
-rw-r--r--vulkan/libvulkan/swapchain.cpp59
2 files changed, 30 insertions, 33 deletions
diff --git a/libs/gralloc/types/Gralloc4.cpp b/libs/gralloc/types/Gralloc4.cpp
index 61e6657621..ce35906949 100644
--- a/libs/gralloc/types/Gralloc4.cpp
+++ b/libs/gralloc/types/Gralloc4.cpp
@@ -1307,6 +1307,10 @@ std::string getChromaSitingName(const ExtendableType& chromaSiting) {
return "SitedInterstitial";
case ChromaSiting::COSITED_HORIZONTAL:
return "CositedHorizontal";
+ case ChromaSiting::COSITED_VERTICAL:
+ return "CositedVertical";
+ case ChromaSiting::COSITED_BOTH:
+ return "CositedBoth";
}
}
diff --git a/vulkan/libvulkan/swapchain.cpp b/vulkan/libvulkan/swapchain.cpp
index dcef54dc38..483863db2e 100644
--- a/vulkan/libvulkan/swapchain.cpp
+++ b/vulkan/libvulkan/swapchain.cpp
@@ -16,6 +16,7 @@
#define ATRACE_TAG ATRACE_TAG_GRAPHICS
+#include <aidl/android/hardware/graphics/common/Dataspace.h>
#include <aidl/android/hardware/graphics/common/PixelFormat.h>
#include <android/hardware/graphics/common/1.0/types.h>
#include <grallocusage/GrallocUsageConversion.h>
@@ -37,6 +38,7 @@
#include "driver.h"
using PixelFormat = aidl::android::hardware::graphics::common::PixelFormat;
+using DataSpace = aidl::android::hardware::graphics::common::Dataspace;
using android::hardware::graphics::common::V1_0::BufferUsage;
namespace vulkan {
@@ -532,61 +534,51 @@ PixelFormat GetNativePixelFormat(VkFormat format) {
return native_format;
}
-android_dataspace GetNativeDataspace(VkColorSpaceKHR colorspace,
- PixelFormat pixelFormat) {
+DataSpace GetNativeDataspace(VkColorSpaceKHR colorspace,
+ PixelFormat pixelFormat) {
switch (colorspace) {
case VK_COLOR_SPACE_SRGB_NONLINEAR_KHR:
- return HAL_DATASPACE_V0_SRGB;
+ return DataSpace::SRGB;
case VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT:
- return HAL_DATASPACE_DISPLAY_P3;
+ return DataSpace::DISPLAY_P3;
case VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT:
- return HAL_DATASPACE_V0_SCRGB_LINEAR;
+ return DataSpace::SCRGB_LINEAR;
case VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT:
- return HAL_DATASPACE_V0_SCRGB;
+ return DataSpace::SCRGB;
case VK_COLOR_SPACE_DCI_P3_LINEAR_EXT:
- return HAL_DATASPACE_DCI_P3_LINEAR;
+ return DataSpace::DCI_P3_LINEAR;
case VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT:
- return HAL_DATASPACE_DCI_P3;
+ return DataSpace::DCI_P3;
case VK_COLOR_SPACE_BT709_LINEAR_EXT:
- return HAL_DATASPACE_V0_SRGB_LINEAR;
+ return DataSpace::SRGB_LINEAR;
case VK_COLOR_SPACE_BT709_NONLINEAR_EXT:
- return HAL_DATASPACE_V0_SRGB;
+ return DataSpace::SRGB;
case VK_COLOR_SPACE_BT2020_LINEAR_EXT:
if (pixelFormat == PixelFormat::RGBA_FP16) {
- return static_cast<android_dataspace>(
- HAL_DATASPACE_STANDARD_BT2020 |
- HAL_DATASPACE_TRANSFER_LINEAR |
- HAL_DATASPACE_RANGE_EXTENDED);
+ return DataSpace::BT2020_LINEAR_EXTENDED;
} else {
- return HAL_DATASPACE_BT2020_LINEAR;
+ return DataSpace::BT2020_LINEAR;
}
case VK_COLOR_SPACE_HDR10_ST2084_EXT:
- return static_cast<android_dataspace>(
- HAL_DATASPACE_STANDARD_BT2020 | HAL_DATASPACE_TRANSFER_ST2084 |
- HAL_DATASPACE_RANGE_FULL);
+ return DataSpace::BT2020_PQ;
case VK_COLOR_SPACE_DOLBYVISION_EXT:
- return static_cast<android_dataspace>(
- HAL_DATASPACE_STANDARD_BT2020 | HAL_DATASPACE_TRANSFER_ST2084 |
- HAL_DATASPACE_RANGE_FULL);
+ return DataSpace::BT2020_PQ;
case VK_COLOR_SPACE_HDR10_HLG_EXT:
- return static_cast<android_dataspace>(HAL_DATASPACE_BT2020_HLG);
+ return DataSpace::BT2020_HLG;
case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT:
- return static_cast<android_dataspace>(
- HAL_DATASPACE_STANDARD_ADOBE_RGB |
- HAL_DATASPACE_TRANSFER_LINEAR | HAL_DATASPACE_RANGE_FULL);
+ return DataSpace::ADOBE_RGB_LINEAR;
case VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT:
- return HAL_DATASPACE_ADOBE_RGB;
-
+ return DataSpace::ADOBE_RGB;
// Pass through is intended to allow app to provide data that is passed
// to the display system without modification.
case VK_COLOR_SPACE_PASS_THROUGH_EXT:
- return HAL_DATASPACE_ARBITRARY;
+ return DataSpace::ARBITRARY;
default:
// This indicates that we don't know about the
// dataspace specified and we should indicate that
// it's unsupported
- return HAL_DATASPACE_UNKNOWN;
+ return DataSpace::UNKNOWN;
}
}
@@ -1393,9 +1385,9 @@ VkResult CreateSwapchainKHR(VkDevice device,
PixelFormat native_pixel_format =
GetNativePixelFormat(create_info->imageFormat);
- android_dataspace native_dataspace =
+ DataSpace native_dataspace =
GetNativeDataspace(create_info->imageColorSpace, native_pixel_format);
- if (native_dataspace == HAL_DATASPACE_UNKNOWN) {
+ if (native_dataspace == DataSpace::UNKNOWN) {
ALOGE(
"CreateSwapchainKHR(VkSwapchainCreateInfoKHR.imageColorSpace = %d) "
"failed: Unsupported color space",
@@ -1501,8 +1493,9 @@ VkResult CreateSwapchainKHR(VkDevice device,
}
/* Respect consumer default dataspace upon HAL_DATASPACE_ARBITRARY. */
- if (native_dataspace != HAL_DATASPACE_ARBITRARY) {
- err = native_window_set_buffers_data_space(window, native_dataspace);
+ if (native_dataspace != DataSpace::ARBITRARY) {
+ err = native_window_set_buffers_data_space(
+ window, static_cast<android_dataspace_t>(native_dataspace));
if (err != android::OK) {
ALOGE("native_window_set_buffers_data_space(%d) failed: %s (%d)",
native_dataspace, strerror(-err), err);