linux/drivers/media/platform/rcar-vin
Niklas Söderlund 6c51f646f6 media: rcar-vin: fix handling of single field frames (top, bottom and alternate fields)
There was never proper support in the VIN driver to deliver ALTERNATING
field format to user-space, remove this field option. The problem is
that ALTERNATING field order requires the sequence numbers of buffers
returned to userspace to reflect if fields were dropped or not,
something which is not possible with the VIN drivers capture logic.

The VIN driver can still capture from a video source which delivers
frames in ALTERNATING field order, but needs to combine them using the
VIN hardware into INTERLACED field order. Before this change if a source
was delivering fields using ALTERNATE the driver would default to
combining them using this hardware feature. Only if the user explicitly
requested ALTERNATE field order would incorrect frames be delivered.

The height should not be cut in half for the format for TOP or BOTTOM
fields settings. This was a mistake and it was made visible by the
scaling refactoring. Correct behavior is that the user should request a
frame size that fits the half height frame reflected in the field
setting. If not the VIN will do its best to scale the top or bottom to
the requested format and cropping and scaling do not work as expected.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2018-04-20 09:53:41 -04:00
..
Kconfig [media] v4l: Switch from V4L2 OF not V4L2 fwnode API 2017-06-06 09:58:16 -03:00
Makefile
rcar-core.c media: rcar-vin: move max width and height information to chip information 2018-04-20 09:50:33 -04:00
rcar-dma.c media: rcar-vin: fix handling of single field frames (top, bottom and alternate fields) 2018-04-20 09:53:41 -04:00
rcar-v4l2.c media: rcar-vin: fix handling of single field frames (top, bottom and alternate fields) 2018-04-20 09:53:41 -04:00
rcar-vin.h media: rcar-vin: all Gen2 boards can scale simplify logic 2018-04-20 09:52:06 -04:00