linux/Documentation/media
Hans Verkuil f5580d8d6f [media] cec: accept two replies for CEC_MSG_INITIATE_ARC
The CEC_MSG_INITIATE_ARC message is special since it is the ONLY
CEC message that accepts two possible valid replies:

CEC_MSG_REPORT_ARC_INITIATED and CEC_MSG_REPORT_ARC_TERMINATED.

So if the transmitted message is CEC_MSG_INITIATE_ARC and the remote
side replied with CEC_MSG_REPORT_ARC_INITIATED or CEC_MSG_REPORT_ARC_TERMINATED,
then a msg->reply value of CEC_MSG_REPORT_ARC_INITIATED or
CEC_MSG_REPORT_ARC_TERMINATED will match either reply.

I thought about either adding a second reply2 field, but that's ugly
for all other messages that have only one reply, and what if in the
future a new message is added that can have three replies?

Another option would be to add a cec_msg flag, but really, the combination
of CEC_MSG_REPORT_ARC_INITIATED and a reply value of one of the two
possible replies already functions as a flag.

Another advantage of this approach is that it is safe to re-use a
cec_msg struct. No need to zero a flags field or a reply2 field.

So since this really is an exception in the CEC specification, I
decided to implement it as an exception as well.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2016-11-16 15:34:55 -02:00
..
dvb-drivers [media] doc-rst: Fix license for the media books 2016-07-23 08:03:24 -03:00
kapi [media] cec-core.rst: improve documentation 2016-11-16 15:26:13 -02:00
media_api_files [media] docs-rst: re-generate typical_media_device.pdf 2016-08-22 10:06:06 -03:00
uapi [media] cec: accept two replies for CEC_MSG_INITIATE_ARC 2016-11-16 15:34:55 -02:00
v4l-drivers [media] cardlist: convert them to asciiart tables 2016-10-24 07:23:50 -02:00
audio.h.rst.exceptions [media] docs-rst exceptions: use C domain references for DVB headers 2016-09-09 09:45:24 -03:00
ca.h.rst.exceptions [media] docs-rst exceptions: use C domain references for DVB headers 2016-09-09 09:45:24 -03:00
cec.h.rst.exceptions [media] docs-rst: fix cec bad cross-references 2016-09-09 09:54:21 -03:00
conf_nitpick.py [media] conf_nitpick.py: ignore C domain data used on vb2 2016-09-09 10:18:07 -03:00
conf.py doc-rst: define PDF's of the media folder 2016-09-01 08:49:33 -06:00
dmx.h.rst.exceptions [media] docs-rst exceptions: use C domain references for DVB headers 2016-09-09 09:45:24 -03:00
frontend.h.rst.exceptions [media] docs-rst exceptions: use C domain references for DVB headers 2016-09-09 09:45:24 -03:00
index.rst [media] index.rst: Fix LaTeX error in interactive mode on Sphinx 1.4.x 2016-08-22 21:23:59 -03:00
intro.rst [media] docs-rst exceptions: use C domain references for DVB headers 2016-09-09 09:45:24 -03:00
lirc.h.rst.exceptions
Makefile Documentation/sphinx: build the media intermediate rst files for all outputs 2016-08-12 15:24:25 -06:00
media_kapi.rst [media] docs-rst: move cec kAPI documentation to the media book 2016-08-22 10:26:17 -03:00
media_uapi.rst [media] doc-rst: better organize the media books 2016-07-23 08:03:24 -03:00
media.h.rst.exceptions
net.h.rst.exceptions [media] docs-rst exceptions: use C domain references for DVB headers 2016-09-09 09:45:24 -03:00
video.h.rst.exceptions [media] docs-rst exceptions: use C domain references for DVB headers 2016-09-09 09:45:24 -03:00
videodev2.h.rst.exceptions [media] vidioc-g-dv-timings.rst: document the new dv_timings flags 2016-11-16 14:37:57 -02:00