[media] omap3isp: ccdc: Only complete buffer when all fields are captured
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Sat, 7 Jun 2014 23:57:07 +0000 (20:57 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Thu, 21 Aug 2014 20:25:15 +0000 (15:25 -0500)
commit93d7badf1b929120cbc886f3dfec3ca55549d086
tree86343a499f2221aeb8a994883baf0b4ac8cd6450
parentaec2de0e93e34e27ef60e7a8f48bc68ec4b4fcbb
[media] omap3isp: ccdc: Only complete buffer when all fields are captured

Checking that the captured field corresponds to the last required field
depending on the requested field order before completing the buffer
isn't enough. When the first field at stream start corresponds to the
last required field, this would result in returning an interlaced buffer
containing a single field.

Fix this by keeping track of the fields captured in the buffer, and make
sure that both fields are present for alternate field orders.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Enrico Butera <ebutera@users.sourceforge.net>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/platform/omap3isp/ispccdc.c
drivers/media/platform/omap3isp/ispccdc.h