drm/msm/dsi: check video mode engine status before waiting
Make sure the video mode engine is on before waiting for the video done interrupt. Changes in v4: - Move setting enabled to false earlier Changes in v3: - Move the return value check to another patch Changes in v2: - Replace pr_err with dev_err - Changed error message Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org> Signed-off-by: Sean Paul <seanpaul@chromium.org> Signed-off-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
parent
a6bb80f8ef
commit
a56896c56e
|
@ -173,6 +173,7 @@ struct msm_dsi_host {
|
|||
|
||||
bool registered;
|
||||
bool power_on;
|
||||
bool enabled;
|
||||
int irq;
|
||||
};
|
||||
|
||||
|
@ -1007,7 +1008,7 @@ static void dsi_wait4video_eng_busy(struct msm_dsi_host *msm_host)
|
|||
if (!(msm_host->mode_flags & MIPI_DSI_MODE_VIDEO))
|
||||
return;
|
||||
|
||||
if (msm_host->power_on) {
|
||||
if (msm_host->power_on && msm_host->enabled) {
|
||||
dsi_wait4video_done(msm_host);
|
||||
/* delay 4 ms to skip BLLP */
|
||||
usleep_range(2000, 4000);
|
||||
|
@ -2209,7 +2210,7 @@ int msm_dsi_host_enable(struct mipi_dsi_host *host)
|
|||
* pm_runtime_put_autosuspend(&msm_host->pdev->dev);
|
||||
* }
|
||||
*/
|
||||
|
||||
msm_host->enabled = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -2217,6 +2218,7 @@ int msm_dsi_host_disable(struct mipi_dsi_host *host)
|
|||
{
|
||||
struct msm_dsi_host *msm_host = to_msm_dsi_host(host);
|
||||
|
||||
msm_host->enabled = false;
|
||||
dsi_op_mode_config(msm_host,
|
||||
!!(msm_host->mode_flags & MIPI_DSI_MODE_VIDEO), false);
|
||||
|
||||
|
|
Loading…
Reference in a new issue