msm: mdss: restore dsi interrupt mask bits
DSI interrupts are not enabled at LK. For cont_splash case, dsi interrupt mask bits need to be restored to enable interrupts so that dcs command be sent to panel. CRs-Fixed: 745369 Change-Id: Ice61d538387c5d37dd9e077f01b4c6d4593cc393 Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
This commit is contained in:
parent
1f09285af5
commit
2af6aecbef
3 changed files with 18 additions and 0 deletions
|
@ -559,6 +559,13 @@ int mdss_dsi_on(struct mdss_panel_data *pdata)
|
||||||
mipi = &pdata->panel_info.mipi;
|
mipi = &pdata->panel_info.mipi;
|
||||||
|
|
||||||
if (mdss_dsi_is_panel_on_interactive(pdata)) {
|
if (mdss_dsi_is_panel_on_interactive(pdata)) {
|
||||||
|
/*
|
||||||
|
* all interrupts are disabled at LK
|
||||||
|
* for cont_splash case, intr mask bits need
|
||||||
|
* to be restored to allow dcs command be
|
||||||
|
* sent to panel
|
||||||
|
*/
|
||||||
|
mdss_dsi_restore_intr_mask(ctrl_pdata);
|
||||||
pr_debug("%s: panel already on\n", __func__);
|
pr_debug("%s: panel already on\n", __func__);
|
||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
|
|
|
@ -413,6 +413,7 @@ int mdss_dsi_cmds_rx(struct mdss_dsi_ctrl_pdata *ctrl,
|
||||||
void mdss_dsi_host_init(struct mdss_panel_data *pdata);
|
void mdss_dsi_host_init(struct mdss_panel_data *pdata);
|
||||||
void mdss_dsi_op_mode_config(int mode,
|
void mdss_dsi_op_mode_config(int mode,
|
||||||
struct mdss_panel_data *pdata);
|
struct mdss_panel_data *pdata);
|
||||||
|
void mdss_dsi_restore_intr_mask(struct mdss_dsi_ctrl_pdata *ctrl);
|
||||||
void mdss_dsi_cmd_mode_ctrl(int enable);
|
void mdss_dsi_cmd_mode_ctrl(int enable);
|
||||||
void mdp4_dsi_cmd_trigger(void);
|
void mdp4_dsi_cmd_trigger(void);
|
||||||
void mdss_dsi_cmd_mdp_start(struct mdss_dsi_ctrl_pdata *ctrl);
|
void mdss_dsi_cmd_mdp_start(struct mdss_dsi_ctrl_pdata *ctrl);
|
||||||
|
|
|
@ -779,6 +779,16 @@ void mdss_dsi_controller_cfg(int enable,
|
||||||
wmb();
|
wmb();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void mdss_dsi_restore_intr_mask(struct mdss_dsi_ctrl_pdata *ctrl)
|
||||||
|
{
|
||||||
|
u32 mask;
|
||||||
|
|
||||||
|
mask = MIPI_INP((ctrl->ctrl_base) + 0x0110);
|
||||||
|
mask |= (DSI_INTR_CMD_DMA_DONE_MASK | DSI_INTR_ERROR_MASK |
|
||||||
|
DSI_INTR_BTA_DONE_MASK);
|
||||||
|
MIPI_OUTP((ctrl->ctrl_base) + 0x0110, mask);
|
||||||
|
}
|
||||||
|
|
||||||
void mdss_dsi_op_mode_config(int mode,
|
void mdss_dsi_op_mode_config(int mode,
|
||||||
struct mdss_panel_data *pdata)
|
struct mdss_panel_data *pdata)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue