diff --git a/arch/arm/boot/dts/msm8226/dsi_panel_sdc_wxga_video_rubenslte.dtsi b/arch/arm/boot/dts/msm8226/dsi_panel_sdc_wxga_video_rubenslte.dtsi index faac8734279..080436bcfc1 100644 --- a/arch/arm/boot/dts/msm8226/dsi_panel_sdc_wxga_video_rubenslte.dtsi +++ b/arch/arm/boot/dts/msm8226/dsi_panel_sdc_wxga_video_rubenslte.dtsi @@ -32,8 +32,8 @@ qcom,mdss-pan-physical-height-dimension = <172>; /* real size of panel in mm */ qcom,mdss-dsi-lp11-init; qcom,mdss-dsi-init-delay-us = <100>; - qcom,mdss-dsi-h-front-porch = <16>; - qcom,mdss-dsi-h-back-porch = <140>; + qcom,mdss-dsi-h-front-porch = <104>; + qcom,mdss-dsi-h-back-porch = <160>; qcom,mdss-dsi-h-pulse-width = <4>; qcom,mdss-dsi-h-sync-skew = <0>; qcom,mdss-dsi-v-back-porch = <4>; diff --git a/drivers/video/msm/mdss/mdss_dsi.c b/drivers/video/msm/mdss/mdss_dsi.c index cb56c9c1a28..d82b9f6068e 100644 --- a/drivers/video/msm/mdss/mdss_dsi.c +++ b/drivers/video/msm/mdss/mdss_dsi.c @@ -1112,6 +1112,11 @@ int mdss_dsi_on(struct mdss_panel_data *pdata) mdss_dsi_phy_sw_reset((ctrl_pdata->ctrl_base)); mdss_dsi_phy_init(pdata); + +#if defined(CONFIG_FB_MSM_MDSS_SDC_WXGA_PANEL) + MIPI_OUTP((ctrl_pdata->ctrl_base) + 0xac, 0); +#endif + mdss_dsi_clk_ctrl(ctrl_pdata, DSI_BUS_CLKS, 0); mdss_dsi_clk_ctrl(ctrl_pdata, DSI_ALL_CLKS, 1); diff --git a/drivers/video/msm/mdss/mdss_fb.c b/drivers/video/msm/mdss/mdss_fb.c index e2f099cdc26..bdb5474873d 100644 --- a/drivers/video/msm/mdss/mdss_fb.c +++ b/drivers/video/msm/mdss/mdss_fb.c @@ -2616,7 +2616,7 @@ static int mdss_fb_check_var(struct fb_var_screeninfo *var, { struct msm_fb_data_type *mfd = (struct msm_fb_data_type *)info->par; - if (var->rotate != FB_ROTATE_UR) + if (var->rotate != FB_ROTATE_UR && var->rotate != FB_ROTATE_UD) return -EINVAL; if (var->grayscale != info->var.grayscale) return -EINVAL; diff --git a/drivers/video/msm/mdss/mdss_sdc_wxga_dsi_panel.c b/drivers/video/msm/mdss/mdss_sdc_wxga_dsi_panel.c index 3199549004e..9fc33665f86 100644 --- a/drivers/video/msm/mdss/mdss_sdc_wxga_dsi_panel.c +++ b/drivers/video/msm/mdss/mdss_sdc_wxga_dsi_panel.c @@ -422,6 +422,9 @@ void mdss_dsi_sdc_panel_reset(struct mdss_panel_data *pdata, int enable) mdelay(2); if (gpio_is_valid(ctrl_pdata->disp_en_gpio)) gpio_set_value((ctrl_pdata->disp_en_gpio), 0); +#if defined(CONFIG_SEC_RUBENS_PROJECT) + mdelay(10); +#endif #if defined(CONFIG_SEC_T10_PROJECT) if (gpio_is_valid(msd.bl_ldi_en)) { gpio_tlmm_config(GPIO_CFG(msd.bl_ldi_en, 0,