[media] v4l: omap4iss: isif: Ignore VD0 interrupts when no buffer is available

The ISIF generates VD0 interrupts even when writes are disabled.
Disabling the ISIF when no buffer is available is thus not be enough, we
need to handle the situation explicitly.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
Laurent Pinchart 2013-08-29 07:40:37 -03:00 committed by Mauro Carvalho Chehab
parent cd782f9d6d
commit 74536b2ff0

View File

@ -235,6 +235,13 @@ static void ipipeif_isr_buffer(struct iss_ipipeif_device *ipipeif)
{
struct iss_buffer *buffer;
/* The ISIF generates VD0 interrupts even when writes are disabled.
* deal with it anyway). Disabling the ISIF when no buffer is available
* is thus not be enough, we need to handle the situation explicitly.
*/
if (list_empty(&ipipeif->video_out.dmaqueue))
return;
ipipeif_write_enable(ipipeif, 0);
buffer = omap4iss_video_buffer_next(&ipipeif->video_out);