diff --git a/target/msmtitanium/target_display.c b/target/msmtitanium/target_display.c
index 28d5c50..5f9ac3b 100644
--- a/target/msmtitanium/target_display.c
+++ b/target/msmtitanium/target_display.c
@@ -219,6 +219,7 @@
 						struct msm_panel_info *pinfo)
 {
 	int ret = NO_ERROR;
+	uint32_t hw_id = board_hardware_id();
 
 	if (enable) {
 
@@ -231,11 +232,13 @@
 			gpio_set_dir(enable_gpio.pin_id, 2);
 		}
 
-		gpio_tlmm_config(bkl_gpio.pin_id, 0,
+		if (hw_id != HW_PLATFORM_QRD) {
+			gpio_tlmm_config(bkl_gpio.pin_id, 0,
 				bkl_gpio.pin_direction, bkl_gpio.pin_pull,
 				bkl_gpio.pin_strength, bkl_gpio.pin_state);
 
-		gpio_set_dir(bkl_gpio.pin_id, 2);
+			gpio_set_dir(bkl_gpio.pin_id, 2);
+		}
 
 		gpio_tlmm_config(reset_gpio.pin_id, 0,
 				reset_gpio.pin_direction, reset_gpio.pin_pull,
@@ -347,9 +350,13 @@
 
 int target_ldo_ctrl(uint8_t enable, struct msm_panel_info *pinfo)
 {
-	uint32_t ldo_num = REG_LDO6 | REG_LDO17 | REG_LDO3 | REG_SMPS3;
+	uint32_t ldo_num = REG_LDO6 | REG_LDO3 | REG_SMPS3;
+	uint32_t hw_id = board_hardware_id();
 
 	if (enable) {
+		if (hw_id != HW_PLATFORM_QRD)
+			ldo_num |= REG_LDO17;
+
 		regulator_enable(ldo_num);
 		mdelay(10);
 		wled_init(pinfo);
@@ -360,7 +367,8 @@
 		 * LDO6, LDO3 and SMPS3 are shared with other subsystems.
 		 * Do not disable them.
 		 */
-		regulator_disable(REG_LDO17);
+		if (hw_id != HW_PLATFORM_QRD)
+			regulator_disable(REG_LDO17);
 	}
 
 	return NO_ERROR;
