dev: gcdb: Support display pre/post on/off API

Call target display pre/post on/off API for
target specific MDP/DSI register settings,
delay config, etc.

Change-Id: Ibe1618a1cbb500249f25f567e2346c29ab9f062f
diff --git a/dev/gcdb/display/panel_display.c b/dev/gcdb/display/panel_display.c
index aed0ac8..8503760 100644
--- a/dev/gcdb/display/panel_display.c
+++ b/dev/gcdb/display/panel_display.c
@@ -151,8 +151,10 @@
 	pinfo->mipi.mdp_trigger = pstruct->paneltiminginfo->dsi_mdp_trigger;
 	pinfo->mipi.dma_trigger = pstruct->paneltiminginfo->dsi_dma_trigger;
 
-	pinfo->on = dsi_panel_on;
-	pinfo->off = dsi_panel_off;
+	pinfo->pre_on = dsi_panel_pre_on;
+	pinfo->pre_off = dsi_panel_pre_off;
+	pinfo->on = dsi_panel_post_on;
+	pinfo->off = dsi_panel_post_off;
 	pinfo->rotate = dsi_panel_rotation;
 	pinfo->config = dsi_panel_config;
 
@@ -163,13 +165,35 @@
 /* Panel Callbacks                                                           */
 /*---------------------------------------------------------------------------*/
 
-int dsi_panel_on()
+int dsi_panel_pre_on()
 {
+	return target_display_pre_on();
+}
+
+int dsi_panel_pre_off()
+{
+	return target_display_pre_off();
+}
+
+int dsi_panel_post_on()
+{
+	int ret = NO_ERROR;
+
+	ret = target_display_post_on();
+	if (ret)
+		return ret;
+
 	return oem_panel_on();
 }
 
-int dsi_panel_off()
+int dsi_panel_post_off()
 {
+	int ret = NO_ERROR;
+
+	ret = target_display_post_off();
+	if (ret)
+		return ret;
+
 	return oem_panel_off();
 }
 
diff --git a/dev/gcdb/display/panel_display.h b/dev/gcdb/display/panel_display.h
index 1f08326..d805715 100755
--- a/dev/gcdb/display/panel_display.h
+++ b/dev/gcdb/display/panel_display.h
@@ -67,8 +67,10 @@
 int dsi_panel_init(struct msm_panel_info *pinfo,
 		struct panel_struct *pstruct);
 
-int dsi_panel_on();
-int dsi_panel_off();
+int dsi_panel_pre_on();
+int dsi_panel_post_on();
+int dsi_panel_pre_off();
+int dsi_panel_post_off();
 int dsi_panel_rotation();
 int dsi_panel_config(void *);