Adding HDR10+ Support to SF

Bug: 118343714
Test: build, boot
Change-Id: I69cbed54c09f6f5bb25dc60308d4218ca6727486
diff --git a/services/surfaceflinger/DisplayDevice.cpp b/services/surfaceflinger/DisplayDevice.cpp
index 2003fb1..e7b7fbe 100644
--- a/services/surfaceflinger/DisplayDevice.cpp
+++ b/services/surfaceflinger/DisplayDevice.cpp
@@ -239,6 +239,7 @@
         mActiveConfig(0),
         mColorTransform(HAL_COLOR_TRANSFORM_IDENTITY),
         mHasWideColorGamut(args.hasWideColorGamut),
+        mHasHdr10Plus(false),
         mHasHdr10(false),
         mHasHLG(false),
         mHasDolbyVision(false),
@@ -252,6 +253,9 @@
     std::vector<Hdr> types = args.hdrCapabilities.getSupportedHdrTypes();
     for (Hdr hdrType : types) {
         switch (hdrType) {
+            case Hdr::HDR10_PLUS:
+                mHasHdr10Plus = true;
+                break;
             case Hdr::HDR10:
                 mHasHdr10 = true;
                 break;
@@ -277,11 +281,11 @@
         // insert HDR10/HLG as we will force client composition for HDR10/HLG
         // layers
         if (!hasHDR10Support()) {
-          types.push_back(Hdr::HDR10);
+            types.push_back(Hdr::HDR10);
         }
 
         if (!hasHLGSupport()) {
-          types.push_back(Hdr::HLG);
+            types.push_back(Hdr::HLG);
         }
     }
     mHdrCapabilities = HdrCapabilities(types, maxLuminance, maxAverageLuminance, minLuminance);
@@ -748,8 +752,11 @@
                   tr[2][1], tr[0][2], tr[1][2], tr[2][2]);
     auto const surface = static_cast<Surface*>(window);
     ui::Dataspace dataspace = surface->getBuffersDataSpace();
-    StringAppendF(&result, "   wideColorGamut=%d, hdr10=%d, colorMode=%s, dataspace: %s (%d)\n",
-                  mHasWideColorGamut, mHasHdr10, decodeColorMode(mActiveColorMode).c_str(),
+    StringAppendF(&result,
+                  "   wideColorGamut=%d, hdr10plus =%d, hdr10=%d, colorMode=%s, dataspace: %s "
+                  "(%d)\n",
+                  mHasWideColorGamut, mHasHdr10Plus, mHasHdr10,
+                  decodeColorMode(mActiveColorMode).c_str(),
                   dataspaceDetails(static_cast<android_dataspace>(dataspace)).c_str(), dataspace);
 
     String8 surfaceDump;