sdm: Add HDR10+ support for DisplayPort displays

Add HDR10+ i.e., dynamic metadata support for DisplayPort displays.
- Query DRM Connector property.
- Convert dynamic metadata to VSIF packets for DP displays.

Change-Id: I816a7099d61bb8f93fa9b692fdec2a047b3c6110
CRs-fixed: 2450703
diff --git a/sdm/include/private/hw_info_types.h b/sdm/include/private/hw_info_types.h
index 666ebec..16b250d 100644
--- a/sdm/include/private/hw_info_types.h
+++ b/sdm/include/private/hw_info_types.h
@@ -30,11 +30,12 @@
 #include <core/core_interface.h>
 #include <utils/locker.h>
 #include <utils/debug.h>
-#include <vector>
-#include <map>
-#include <string>
 #include <bitset>
+#include <map>
 #include <memory>
+#include <set>
+#include <string>
+#include <vector>
 
 namespace sdm {
 using std::string;
@@ -358,6 +359,7 @@
   uint32_t left_roi_count = 1;        // Number if ROI supported on left panel
   uint32_t right_roi_count = 1;       // Number if ROI supported on right panel
   bool hdr_enabled = false;           // HDR feature supported
+  bool hdr_plus_enabled = false;      // HDR10+ feature supported
   bool hdr_metadata_type_one = false;     // Static HDR metadata type one
   uint32_t hdr_eotf = 0;              // Electro optical transfer function
   float peak_luminance = 0.0f;        // Panel's peak luminance level
@@ -614,6 +616,10 @@
 
   int32_t layer_index = -1;
   HDROperation operation = kNoOp;
+  bool in_hdr_mode = false;  // True if already in HDR mode with static metadata.
+  bool blend_space_layer_changed = false;  // True if HDR layer's index changed.
+  std::set<uint32_t> hdr_layers;  // Non-tonemapped HDR layer indices.
+  std::vector<uint8_t> dyn_hdr_vsif_payload;  // Dynamic HDR VSIF data.
 };
 
 struct LayerExt {