Merge "target: msm8952: add subtype support for sdm429w WDP"
diff --git a/target/msm8952/init.c b/target/msm8952/init.c
old mode 100644
new mode 100755
index 136ab70..c7f2da3
--- a/target/msm8952/init.c
+++ b/target/msm8952/init.c
@@ -112,8 +112,7 @@
 
 static int sdm429_pm660_target()
 {
-	if ((platform_is_sdm429() || platform_is_sdm429w()) && (board_hardware_subtype()
-			== HW_PLATFORM_SUBTYPE_429W_PM660))
+	if ((platform_is_sdm429() && (board_hardware_subtype() == HW_PLATFORM_SUBTYPE_429W_PM660)) || platform_is_sdm429w())
 		return 1;
 	else
 		return 0;
diff --git a/target/msm8952/oem_panel.c b/target/msm8952/oem_panel.c
old mode 100644
new mode 100755
index e594258..07eee04
--- a/target/msm8952/oem_panel.c
+++ b/target/msm8952/oem_panel.c
@@ -1076,13 +1076,11 @@
 		}
 
 		if (platform_is_sdm429() || platform_is_sdm429w()) {
-			if (hw_subtype == HW_PLATFORM_SUBTYPE_429W_PM660) {
-				/* Spyro target */
-				if (plat_hw_ver_major == 1) /* WDP 2700 */
-					panel_id = RM69090_QVGA_CMD_PANEL;
-				else /* WTP 2700 DVT */
-					panel_id = RM67162_QVGA_CMD_PANEL;
-			} else
+			if (hw_subtype == HW_PLATFORM_SUBTYPE_429W_PM660) /* WTP 2700 DVT */
+			  panel_id = RM67162_QVGA_CMD_PANEL;
+			else if (hw_subtype == HW_PLATFORM_SUBTYPE_429W_PM660_WDP) /* WDP 2700 */
+			  panel_id = RM69090_QVGA_CMD_PANEL;
+      else
 				panel_id = HX8399C_HD_PLUS_VIDEO_PANEL;
 		}
 
diff --git a/target/msm8952/regulator.c b/target/msm8952/regulator.c
old mode 100644
new mode 100755
index 143d9c0..873077f
--- a/target/msm8952/regulator.c
+++ b/target/msm8952/regulator.c
@@ -187,8 +187,7 @@
 			rpm_send_data(&ldo2[GENERIC_ENABLE][0], 36, RPM_REQUEST_TYPE);
 	}
 
-	if ((platform_is_sdm429() || platform_is_sdm429w()) && hw_subtype
-			== HW_PLATFORM_SUBTYPE_429W_PM660) {
+	if ((platform_is_sdm429() && (board_hardware_subtype() == HW_PLATFORM_SUBTYPE_429W_PM660)) || platform_is_sdm429w()) {
 		if (enable & REG_LDO13)
 			rpm_send_data(&ldo13_pm660[GENERIC_ENABLE][0],
 				36, RPM_REQUEST_TYPE);
diff --git a/target/msm8952/target_display.c b/target/msm8952/target_display.c
old mode 100644
new mode 100755
index 372e4f4..0dc6834
--- a/target/msm8952/target_display.c
+++ b/target/msm8952/target_display.c
@@ -454,11 +454,16 @@
 		pinfo->mipi.use_enable_gpio = 1;
 	} else if (platform_is_sdm439() || platform_is_sdm429() || platform_is_sdm429w()) {
 		reset_gpio.pin_id = 60;
-		if ((platform_is_sdm429() || platform_is_sdm429w()) && hw_subtype
-			== HW_PLATFORM_SUBTYPE_429W_PM660) {
-			reset_gpio.pin_id = 60;
-			pinfo->mipi.use_enable_gpio = 1;
-			enable_gpio.pin_id = 69;
+		if ((platform_is_sdm429() && (board_hardware_subtype() == HW_PLATFORM_SUBTYPE_429W_PM660)) || platform_is_sdm429w()) {
+      if (board_hardware_subtype() == HW_PLATFORM_SUBTYPE_429W_PM660_WDP) {
+        reset_gpio.pin_id = 60;
+        pinfo->mipi.use_enable_gpio = 0;
+      }
+      else {
+        reset_gpio.pin_id = 60;
+			  pinfo->mipi.use_enable_gpio = 1;
+			  enable_gpio.pin_id = 69;
+      }
 		}
 	} else if ((hw_id == HW_PLATFORM_QRD) &&
 		   (hw_subtype == HW_PLATFORM_SUBTYPE_POLARIS)) {
@@ -674,8 +679,7 @@
 	else
 		ldo_num |= REG_LDO2;
 
-	if ((platform_is_sdm429() || platform_is_sdm429w()) && hw_subtype
-		== HW_PLATFORM_SUBTYPE_429W_PM660) {
+	if ((platform_is_sdm429() && (board_hardware_subtype() == HW_PLATFORM_SUBTYPE_429W_PM660)) || platform_is_sdm429w()) {
 			ldo_num &= ~(REG_LDO17 | REG_LDO5);
 			ldo_num |= REG_LDO13 | REG_LDO15;
 		}