Message ID | 1523930206-6304-1-git-send-email-abhinavk@codeaurora.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Apr 16, 2018 at 06:56:45PM -0700, Abhinav Kumar wrote: > Make sure the video mode engine is on before waiting > for the video done interrupt. > > Changes in v2: > - Replace pr_err with dev_err > - Changed error message > > Changes in v3: > - Move the return value check to another > patch > > Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org> > --- > drivers/gpu/drm/msm/dsi/dsi_host.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c b/drivers/gpu/drm/msm/dsi/dsi_host.c > index 7a03a94..8df0d44 100644 > --- a/drivers/gpu/drm/msm/dsi/dsi_host.c > +++ b/drivers/gpu/drm/msm/dsi/dsi_host.c > @@ -173,6 +173,7 @@ struct msm_dsi_host { > > bool registered; > bool power_on; > + bool enabled; > int irq; > }; > > @@ -1001,7 +1002,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); > @@ -2203,7 +2204,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; > } > > @@ -2219,7 +2220,7 @@ int msm_dsi_host_disable(struct mipi_dsi_host *host) > * Reset to disable video engine so that we can send off cmd. > */ > dsi_sw_reset(msm_host); > - > + msm_host->enabled = false; I thought this was moving to the start of the function? > return 0; > } > > -- > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, > a Linux Foundation Collaborative Project >
On 2018-04-17 13:25, Sean Paul wrote: > On Mon, Apr 16, 2018 at 06:56:45PM -0700, Abhinav Kumar wrote: >> Make sure the video mode engine is on before waiting >> for the video done interrupt. >> >> Changes in v2: >> - Replace pr_err with dev_err >> - Changed error message >> >> Changes in v3: >> - Move the return value check to another >> patch >> >> Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org> >> --- >> drivers/gpu/drm/msm/dsi/dsi_host.c | 7 ++++--- >> 1 file changed, 4 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c >> b/drivers/gpu/drm/msm/dsi/dsi_host.c >> index 7a03a94..8df0d44 100644 >> --- a/drivers/gpu/drm/msm/dsi/dsi_host.c >> +++ b/drivers/gpu/drm/msm/dsi/dsi_host.c >> @@ -173,6 +173,7 @@ struct msm_dsi_host { >> >> bool registered; >> bool power_on; >> + bool enabled; >> int irq; >> }; >> >> @@ -1001,7 +1002,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); >> @@ -2203,7 +2204,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; >> } >> >> @@ -2219,7 +2220,7 @@ int msm_dsi_host_disable(struct mipi_dsi_host >> *host) >> * Reset to disable video engine so that we can send off cmd. >> */ >> dsi_sw_reset(msm_host); >> - >> + msm_host->enabled = false; > > I thought this was moving to the start of the function? > [Abhinav] Yes, my bad. While rebasing that review comment was left out. Uploading v4 right now >> return 0; >> } >> >> -- >> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora >> Forum, >> a Linux Foundation Collaborative Project >>
diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c b/drivers/gpu/drm/msm/dsi/dsi_host.c index 7a03a94..8df0d44 100644 --- a/drivers/gpu/drm/msm/dsi/dsi_host.c +++ b/drivers/gpu/drm/msm/dsi/dsi_host.c @@ -173,6 +173,7 @@ struct msm_dsi_host { bool registered; bool power_on; + bool enabled; int irq; }; @@ -1001,7 +1002,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); @@ -2203,7 +2204,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; } @@ -2219,7 +2220,7 @@ int msm_dsi_host_disable(struct mipi_dsi_host *host) * Reset to disable video engine so that we can send off cmd. */ dsi_sw_reset(msm_host); - + msm_host->enabled = false; return 0; }
Make sure the video mode engine is on before waiting for the video done interrupt. Changes in v2: - Replace pr_err with dev_err - Changed error message Changes in v3: - Move the return value check to another patch Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org> --- drivers/gpu/drm/msm/dsi/dsi_host.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)