diff options
author | Jonathan Corbet <corbet@lwn.net> | 2012-03-16 18:14:54 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-03-19 21:16:29 -0400 |
commit | f2354dd180755e25369167eda5de2c226d59fb1d (patch) | |
tree | 35a5b9ec5853e131252dc4c5c1030bfd86741a74 | |
parent | 121bbe254a46e075673e6b9eec5613ea16400ccc (diff) |
[media] marvell-cam: Don't signal multiple frame completions in scatter/gather mode
There is only one frame known to the DMA engine in scatter/gather mode, but
it still tells us that any or all of frames 1-3 are done at each completion
interrupt. Avoid the creation of junk frames by being sure to only
"complete" one on each interrupt.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/marvell-ccic/mcam-core.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/video/marvell-ccic/mcam-core.c b/drivers/media/video/marvell-ccic/mcam-core.c index e46a72af63c4..036db2746407 100644 --- a/drivers/media/video/marvell-ccic/mcam-core.c +++ b/drivers/media/video/marvell-ccic/mcam-core.c | |||
@@ -1697,6 +1697,8 @@ int mccic_irq(struct mcam_camera *cam, unsigned int irqs) | |||
1697 | if (irqs & (IRQ_EOF0 << frame)) { | 1697 | if (irqs & (IRQ_EOF0 << frame)) { |
1698 | mcam_frame_complete(cam, frame); | 1698 | mcam_frame_complete(cam, frame); |
1699 | handled = 1; | 1699 | handled = 1; |
1700 | if (cam->buffer_mode == B_DMA_sg) | ||
1701 | break; | ||
1700 | } | 1702 | } |
1701 | /* | 1703 | /* |
1702 | * If a frame starts, note that we have DMA active. This | 1704 | * If a frame starts, note that we have DMA active. This |