sdm:  Dont validate dataspace for HAL_DATASPACE_UNKNOWN

- GetClientTargetSupport API passes HAL_DATASPACE_UNKNOWN
  everytime and expects no error for HAL_DATASPACE_UNKNOWN

CRs-Fixed: 2121789
Change-Id: I7b9b4bbe7215aaf164cf1b9866899bf66a185543
diff --git a/sdm/libs/core/display_base.cpp b/sdm/libs/core/display_base.cpp
index 34740a9..ee2fe44 100644
--- a/sdm/libs/core/display_base.cpp
+++ b/sdm/libs/core/display_base.cpp
@@ -1523,28 +1523,28 @@
 DisplayError DisplayBase::GetClientTargetSupport(uint32_t width, uint32_t height,
                                                  LayerBufferFormat format,
                                                  const ColorMetaData &color_metadata) {
-  DisplayError error = kErrorNone;
-
   if (format != kFormatRGBA8888 && format != kFormatRGBA1010102) {
     DLOGW("Unsupported format = %d", format);
-    error = kErrorNotSupported;
+    return kErrorNotSupported;
   } else if (ValidateScaling(width, height) != kErrorNone) {
     DLOGW("Unsupported width = %d height = %d", width, height);
-    error = kErrorNotSupported;
-  } else {
-    error = ValidateDataspace(color_metadata);
+    return kErrorNotSupported;
+  } else if (color_metadata.transfer && color_metadata.colorPrimaries) {
+    DisplayError error = ValidateDataspace(color_metadata);
     if (error != kErrorNone) {
+      DLOGW("Unsupported Transfer Request = %d Color Primary = %d",
+             color_metadata.transfer, color_metadata.colorPrimaries);
       return error;
     }
 
     // Check for BT2020 support
     if (color_metadata.colorPrimaries == ColorPrimaries_BT2020) {
-      DLOGW("Unsupported dataspace");
-      error = kErrorNotSupported;
+      DLOGW("Unsupported Color Primary = %d", color_metadata.colorPrimaries);
+      return kErrorNotSupported;
     }
   }
 
-  return error;
+  return kErrorNone;
 }
 
 DisplayError DisplayBase::ValidateScaling(uint32_t width, uint32_t height) {
diff --git a/sdm/libs/hwc2/hwc_display.cpp b/sdm/libs/hwc2/hwc_display.cpp
index 0c305be..2255c45 100644
--- a/sdm/libs/hwc2/hwc_display.cpp
+++ b/sdm/libs/hwc2/hwc_display.cpp
@@ -732,11 +732,13 @@
 HWC2::Error HWCDisplay::GetClientTargetSupport(uint32_t width, uint32_t height, int32_t format,
                                                int32_t dataspace) {
   ColorMetaData color_metadata = {};
-  LayerBufferFormat sdm_format = GetSDMFormat(format, 0);
-  GetColorPrimary(dataspace, &(color_metadata.colorPrimaries));
-  GetTransfer(dataspace, &(color_metadata.transfer));
-  GetRange(dataspace, &(color_metadata.range));
+  if (dataspace != HAL_DATASPACE_UNKNOWN) {
+    GetColorPrimary(dataspace, &(color_metadata.colorPrimaries));
+    GetTransfer(dataspace, &(color_metadata.transfer));
+    GetRange(dataspace, &(color_metadata.range));
+  }
 
+  LayerBufferFormat sdm_format = GetSDMFormat(format, 0);
   if (display_intf_->GetClientTargetSupport(width, height, sdm_format,
                                             color_metadata) != kErrorNone) {
     return HWC2::Error::Unsupported;