media: omap3isp: Prevent enabling CCDC when stopping streaming

Commit ... prevented restarting CCDC through its interrupt handler when
it's about to be disabled. It missed to address the case when CCDC might
be enabled due to queueing a buffer. Do that now.

Fixes: dd12ed17ce ("omap3isp: Don't restart CCDC if we're about to stop")

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
Sakari Ailus 2020-01-02 12:25:33 -03:00 committed by Mauro Carvalho Chehab
parent d44535cb14
commit ab07b1a6ac
1 changed files with 4 additions and 0 deletions

View File

@ -1312,6 +1312,10 @@ static void __ccdc_enable(struct isp_ccdc_device *ccdc, int enable)
{
struct isp_device *isp = to_isp_device(ccdc);
/* Avoid restarting the CCDC when streaming is stopping. */
if (enable && ccdc->stopping & CCDC_STOP_REQUEST)
return;
isp_reg_clr_set(isp, OMAP3_ISP_IOMEM_CCDC, ISPCCDC_PCR,
ISPCCDC_PCR_EN, enable ? ISPCCDC_PCR_EN : 0);