media: stm32: dcmipp: bytecap: clear all interrupts upon stream stop

Ensure that there are no pending interrupts after we have stopped the
pipeline. Indeed, it could happen that new interrupt has been generated
during the stop_streaming processing hence clear them in order to avoid
getting a new interrupt right from the start of a next start_streaming.

Fixes: 28e0f37722 ("media: stm32-dcmipp: STM32 DCMIPP camera interface driver")
Cc: stable@vger.kernel.org
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
This commit is contained in:
Alain Volmat 2025-12-19 15:30:35 +01:00 committed by Hans Verkuil
parent 5152437f76
commit 222f1279ed

View File

@ -512,6 +512,9 @@ static void dcmipp_bytecap_stop_streaming(struct vb2_queue *vq)
/* Disable pipe */
reg_clear(vcap, DCMIPP_P0FSCR, DCMIPP_P0FSCR_PIPEN);
/* Clear any pending interrupts */
reg_write(vcap, DCMIPP_CMFCR, DCMIPP_CMIER_P0ALL);
spin_lock_irq(&vcap->irqlock);
/* Return all queued buffers to vb2 in ERROR state */