diff --git a/include/display_properties.h b/include/display_properties.h
index 7eddc3b..e5b431c 100644
--- a/include/display_properties.h
+++ b/include/display_properties.h
@@ -114,6 +114,9 @@
 #define PREFER_MULTIRECT_PROP                DISPLAY_PROP("prefer_multirect")
 #define DROP_SKEWED_VSYNC                    DISPLAY_PROP("drop_skewed_vsync")
 #define DISABLE_FAST_PATH                    DISPLAY_PROP("disable_fast_path")
+#define BUILTIN_BASEID_AND_SIZE_PROP         DISPLAY_PROP("builtin_baseid_and_size")
+#define PLUGGABLE_BASEID_AND_SIZE_PROP       DISPLAY_PROP("pluggable_baseid_and_size")
+#define VIRTUAL_BASEID_AND_SIZE_PROP         DISPLAY_PROP("virtual_baseid_and_size")
 
 #define ZERO_SWAP_INTERVAL                   "vendor.debug.egl.swapinterval"
 
diff --git a/sdm/libs/hwc2/Android.mk b/sdm/libs/hwc2/Android.mk
index a9052e0..9e11411 100644
--- a/sdm/libs/hwc2/Android.mk
+++ b/sdm/libs/hwc2/Android.mk
@@ -80,6 +80,10 @@
 LOCAL_SHARED_LIBRARIES        += vendor.display.config@1.8
 endif
 
+ifeq ($(TARGET_BOARD_AUTO), true)
+LOCAL_CFLAGS                  += -DCONFIG_BASEID_FROM_PROP
+endif
+
 LOCAL_SRC_FILES               := hwc_session.cpp \
                                  hwc_session_services.cpp \
                                  hwc_display.cpp \
diff --git a/sdm/libs/hwc2/hwc_session.cpp b/sdm/libs/hwc2/hwc_session.cpp
index 23d2ab4..13769df 100644
--- a/sdm/libs/hwc2/hwc_session.cpp
+++ b/sdm/libs/hwc2/hwc_session.cpp
@@ -169,6 +169,29 @@
 
   InitDisplaySlots();
 
+#if defined(DISPLAY_CONFIG_1_2) && defined(CONFIG_BASEID_FROM_PROP)
+  char indices[kPropertyMax];
+  uint32_t index_start, index_size;
+  if (Debug::Get()->GetProperty(BUILTIN_BASEID_AND_SIZE_PROP, indices) == kErrorNone) {
+    if (std::sscanf(indices, "%d,%d", &index_start, &index_size) == 2) {
+      setDisplayIndex(IDisplayConfig::DisplayTypeExt::DISPLAY_BUILTIN,
+               index_start, index_size);
+    }
+  }
+  if (Debug::Get()->GetProperty(PLUGGABLE_BASEID_AND_SIZE_PROP, indices) == kErrorNone) {
+    if (std::sscanf(indices, "%d,%d", &index_start, &index_size) == 2) {
+      setDisplayIndex(IDisplayConfig::DisplayTypeExt::DISPLAY_PLUGGABLE,
+               index_start, index_size);
+    }
+  }
+  if (Debug::Get()->GetProperty(VIRTUAL_BASEID_AND_SIZE_PROP, indices) == kErrorNone) {
+    if (std::sscanf(indices, "%d,%d", &index_start, &index_size) == 2) {
+      setDisplayIndex(IDisplayConfig::DisplayTypeExt::DISPLAY_VIRTUAL,
+               index_start, index_size);
+    }
+  }
+#endif
+
   // Start QService and connect to it.
   qService::QService::init();
   android::sp<qService::IQService> iqservice = android::interface_cast<qService::IQService>(
