Commit ba24b442 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[media] vivid: do not allow video loopback for SEQ_TB/BT

Sequential top-bottom/bottom-top fields are not supported as video loopback.
This is too much work to implement for field settings that are rarely used.
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent 9c35bd48
...@@ -912,6 +912,11 @@ looped to the video input provided that: ...@@ -912,6 +912,11 @@ looped to the video input provided that:
sequence and field counting in struct v4l2_buffer on the capture side may not sequence and field counting in struct v4l2_buffer on the capture side may not
be 100% accurate. be 100% accurate.
- field settings V4L2_FIELD_SEQ_TB/BT are not supported. While it is possible to
implement this, it would mean a lot of work to get this right. Since these
field values are rarely used the decision was made not to implement this for
now.
- on the input side the "Standard Signal Mode" for the S-Video input or the - on the input side the "Standard Signal Mode" for the S-Video input or the
"DV Timings Signal Mode" for the HDMI input should be configured so that a "DV Timings Signal Mode" for the HDMI input should be configured so that a
valid signal is passed to the video input. valid signal is passed to the video input.
......
...@@ -210,6 +210,13 @@ bool vivid_vid_can_loop(struct vivid_dev *dev) ...@@ -210,6 +210,13 @@ bool vivid_vid_can_loop(struct vivid_dev *dev)
return false; return false;
if (dev->field_cap != dev->field_out) if (dev->field_cap != dev->field_out)
return false; return false;
/*
* While this can be supported, it is just too much work
* to actually implement.
*/
if (dev->field_cap == V4L2_FIELD_SEQ_TB ||
dev->field_cap == V4L2_FIELD_SEQ_BT)
return false;
if (vivid_is_svid_cap(dev) && vivid_is_svid_out(dev)) { if (vivid_is_svid_cap(dev) && vivid_is_svid_out(dev)) {
if (!(dev->std_cap & V4L2_STD_525_60) != if (!(dev->std_cap & V4L2_STD_525_60) !=
!(dev->std_out & V4L2_STD_525_60)) !(dev->std_out & V4L2_STD_525_60))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment