msm8x25: Add support for continuous splash screen

 - Enable continuous splash screen
 - Enable one wire mode for back light
 - Add macro to allow display mode (command/video) configuration change
   during compile time.

Change-Id: I31e9fa9c0fe709b2a75bc2648dbd2d7f1be14776
diff --git a/target/msm7627a/include/target/display.h b/target/msm7627a/include/target/display.h
index 4494a37..db35aa4 100644
--- a/target/msm7627a/include/target/display.h
+++ b/target/msm7627a/include/target/display.h
@@ -76,4 +76,5 @@
 
 extern int mipi_dsi_phy_init(struct mipi_dsi_panel_config *);
 extern void config_renesas_dsi_video_mode(void);
+int target_cont_splash_screen(void);
 #endif
diff --git a/target/msm7627a/init.c b/target/msm7627a/init.c
index a457613..5e10708 100644
--- a/target/msm7627a/init.c
+++ b/target/msm7627a/init.c
@@ -602,3 +602,21 @@
 {
 	target_ulpi_init();
 }
+
+int target_cont_splash_screen()
+{
+	int ret = 0;
+	unsigned mach_type = 0;
+
+	mach_type = board_machtype();
+
+	switch(mach_type) {
+		case MSM8X25_EVB:
+		case MSM8X25_EVT:
+			ret = 1;
+			break;
+		default:
+			ret = 0;
+	};
+	return ret;
+}
diff --git a/target/msm7627a/rules.mk b/target/msm7627a/rules.mk
index e414c2b..758a7a8 100644
--- a/target/msm7627a/rules.mk
+++ b/target/msm7627a/rules.mk
@@ -23,6 +23,7 @@
 DEFINES += DISPLAY_MIPI_PANEL_RENESAS=1
 DEFINES += USE_PCOM_SECBOOT=1
 DEFINES += TARGET_USES_GIC_VIC=1
+DEFINES += MIPI_VIDEO_MODE=0
 
 MODULES += \
 	dev/keys \
diff --git a/target/msm7627a/target_display.c b/target/msm7627a/target_display.c
index d92dd1e..92a4a93 100644
--- a/target/msm7627a/target_display.c
+++ b/target/msm7627a/target_display.c
@@ -64,7 +64,11 @@
 	case MSM7X27A_SURF:
 	case MSM8X25_SURF:
 	case MSM7X27A_FFA:
+#if MIPI_VIDEO_MODE
+		mipi_renesas_video_fwvga_init(&(panel.panel_info));
+#else
 		mipi_renesas_cmd_fwvga_init(&(panel.panel_info));
+#endif
 		panel.clk_func = msm7627a_mdp_clock_init;
 		panel.power_func = mipi_renesas_panel_dsi_config;
 		panel.fb.base = MIPI_FB_ADDR;
@@ -77,7 +81,11 @@
 		break;
 	case MSM7X25A_SURF:
 	case MSM7X25A_FFA:
+#if MIPI_VIDEO_MODE
+		mipi_renesas_video_hvga_init(&(panel.panel_info));
+#else
 		mipi_renesas_cmd_hvga_init(&(panel.panel_info));
+#endif
 		panel.clk_func = msm7627a_mdp_clock_init;
 		panel.power_func = mipi_renesas_panel_dsi_config;
 		panel.fb.base = MIPI_FB_ADDR;
@@ -91,7 +99,11 @@
 	case MSM7X27A_EVB:
 	case MSM8X25_EVB:
 	case MSM8X25_EVT:
+#if MIPI_VIDEO_MODE
+		mipi_nt35510_video_wvga_init(&(panel.panel_info));
+#else
 		mipi_nt35510_cmd_wvga_init(&(panel.panel_info));
+#endif
 		panel.clk_func = msm7627a_mdp_clock_init;
 		panel.power_func = mipi_nt35510_panel_dsi_config;
 		panel.fb.base = MIPI_FB_ADDR;