diff --git a/config/msmnile.mk b/config/msmnile.mk
deleted file mode 100644
index 7730d68..0000000
--- a/config/msmnile.mk
+++ /dev/null
@@ -1,87 +0,0 @@
-#Display related packages and configuration
-
-PRODUCT_PACKAGES += \
-    android.hardware.graphics.composer@2.3-impl \
-    android.hardware.graphics.composer@2.3-service \
-    android.hardware.graphics.mapper@2.0-impl-qti-display \
-    vendor.qti.hardware.display.allocator@1.0-service \
-    android.hardware.memtrack@1.0-impl \
-    android.hardware.memtrack@1.0-service \
-    android.hardware.light@2.0-impl \
-    android.hardware.light@2.0-service \
-    gralloc.qcom \
-    lights.qcom \
-    hwcomposer.qcom \
-    memtrack.qcom \
-    libqdutils \
-    libqdMetaData \
-    modetest
-
-#QDCM calibration xml file for 2k panel
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_nt35597_cmd_mode_dsi_truly_panel_with_DSC.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_nt35597_cmd_mode_dsi_truly_panel_with_DSC.xml
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_nt35597_cmd_mode_dsi_truly_panel_with_DSC.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_nt35597_video_mode_dsi_truly_panel_with_DSC.xml
-#QDCM calibration xml file for 4k panel
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_Sharp_4k_cmd_mode_dsc_dsi_panel.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_Sharp_4k_cmd_mode_dsc_dsi_panel.xml
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_Sharp_4k_cmd_mode_dsc_dsi_panel.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_Sharp_4k_video_mode_dsc_dsi_panel.xml
-#QDCM calibration xml file for amoled panel
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_sw43404_amoled_cmd_mode_dsi_boe_panel_with_DSC.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_sw43404_amoled_cmd_mode_dsi_boe_panel_with_DSC.xml
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_sw43404_amoled_cmd_mode_dsi_boe_panel_with_DSC.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_sw43404_amoled_video_mode_dsi_boe_panel_with_DSC.xml
-
-#QDCM calibration xml file for primary panel sharp 1080p
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_nt35597_cmd_mode_dsi_truly_panel_with_DSC.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_sharp_1080p_cmd_mode_dsi_panel.xml
-
-#QDCM calibration xml file for secondary panel nt35695b
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_nt35597_cmd_mode_dsi_truly_panel_with_DSC.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_nt35695b_truly_fhd_command_mode_dsi_panel.xml
-PRODUCT_COPY_FILES += hardware/qcom/display/config/qdcm_calib_data_nt35597_cmd_mode_dsi_truly_panel_with_DSC.xml:$(TARGET_COPY_OUT_VENDOR)/etc/qdcm_calib_data_nt35695b_truly_fhd_video_mode_dsi_panel.xml
-
-#Enable Charging Icon
-TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
-
-TARGET_USES_GRALLOC1 := true
-TARGET_USES_DRM_PP := true
-TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS := true
-MAX_VIRTUAL_DISPLAY_DIMENSION := 4096
-NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3
-TARGET_USES_HWC2 := true
-TARGET_USES_QCOM_DISPLAY_BSP := true
-TARGET_USES_COLOR_METADATA := true
-TARGET_HAS_WIDE_COLOR_DISPLAY := true
-TARGET_HAS_HDR_DISPLAY := true
-TARGET_USES_DISPLAY_RENDER_INTENTS := true
-
-PRODUCT_PROPERTY_OVERRIDES += \
-    persist.demo.hdmirotationlock=false \
-    persist.sys.sf.color_saturation=1.0 \
-    debug.sf.hw=0 \
-    debug.egl.hw=0 \
-    debug.sf.latch_unsignaled=1 \
-    debug.mdpcomp.logs=0 \
-    ro.vendor.display.cabl=2 \
-    vendor.gralloc.disable_ubwc=0 \
-    vendor.display.disable_scaler=0 \
-    vendor.display.disable_inline_rotator=1 \
-    vendor.display.disable_decimation=1 \
-    vendor.display.enable_null_display=0 \
-    vendor.display.disable_excl_rect=0 \
-    vendor.display.comp_mask=0 \
-    vendor.display.enable_default_color_mode=1
-
-ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
-# Recovery is enabled, logging is enabled
-PRODUCT_PROPERTY_OVERRIDES += \
-    vendor.display.disable_hw_recovery_dump=0
-else
-# Recovery is enabled, logging is disabled
-PRODUCT_PROPERTY_OVERRIDES += \
-    vendor.display.disable_hw_recovery_dump=1
-endif
-
-# Properties using default value:
-#    vendor.display.disable_hw_recovery=0
-
-# This matrix should be in column major order, per SurfaceFlinger requirement
-#  1.0   0.0   0.0
-#  0.0   1.0   0.0
-#  0.0   0.0   1.0
-PRODUCT_PROPERTY_OVERRIDES += \
-    vendor.display.dataspace_saturation_matrix=1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0
diff --git a/sdm/libs/core/display_base.cpp b/sdm/libs/core/display_base.cpp
index ef41753..757c288 100644
--- a/sdm/libs/core/display_base.cpp
+++ b/sdm/libs/core/display_base.cpp
@@ -1446,6 +1446,11 @@
     // commit. Need to revist this and update it accordingly for FBT layer.
     if (hw_layers_.info.gpu_target_index == sdm_layer_index) {
       hw_layer.input_buffer.flags.secure = sdm_layer->input_buffer.flags.secure;
+      hw_layer.input_buffer.format = sdm_layer->input_buffer.format;
+      hw_layer.input_buffer.width = sdm_layer->input_buffer.width;
+      hw_layer.input_buffer.height = sdm_layer->input_buffer.height;
+      hw_layer.input_buffer.unaligned_width = sdm_layer->input_buffer.unaligned_width;
+      hw_layer.input_buffer.unaligned_height = sdm_layer->input_buffer.unaligned_height;
     }
   }
 
