Em Sun, 3 Sep 2017 22:05:23 +0200 Honza Petrouš <jpetrous@xxxxxxxxx> escreveu: > 1) #define CA_SET_DESCR _IOW('o', 134, ca_descr_t) > ============================================ > > CA_SET_DESCR is used for feeding descrambler device > with correct keys (called here "control words") what > allows to get services unscrambled. > > The best docu is: > > "Digital Video Broadcasting (DVB); > Support for use of the DVB Scrambling Algorithm version 3 > within digital broadcasting systems" > > Defined as DVB Document A125 and publicly > available here: > > https://www.dvb.org/resources/public/standards/a125_dvb-csa3.pdf > > > typedef struct ca_descr { > unsigned int index; > unsigned int parity; /* 0 == even, 1 == odd */ > unsigned char cw[8]; > } ca_descr_t; > > The 'index' is adress of the descrambler instance, as there exist > limited number of them (retieved by CA_GET_DESCR_INFO). Thanks for the info. If I understood well, the enclosed patch should be documenting it. Thanks, Mauro [PATCH] media: ca docs: document CA_SET_DESCR ioctl and structs The av7110 driver uses CA_SET_DESCR to store the descrambler control words at the CA descrambler slots. Document it. Thanks-to: Honza Petrouš <jpetrous@xxxxxxxxx> Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxxx> diff --git a/Documentation/media/uapi/dvb/ca-set-descr.rst b/Documentation/media/uapi/dvb/ca-set-descr.rst index 9c484317d55c..a6c47205ffd8 100644 --- a/Documentation/media/uapi/dvb/ca-set-descr.rst +++ b/Documentation/media/uapi/dvb/ca-set-descr.rst @@ -28,22 +28,11 @@ Arguments ``msg`` Pointer to struct :c:type:`ca_descr`. -.. c:type:: ca_descr - -.. code-block:: c - - struct ca_descr { - unsigned int index; - unsigned int parity; - unsigned char cw[8]; - }; - - Description ----------- -.. note:: This ioctl is undocumented. Documentation is welcome. - +CA_SET_DESCR is used for feeding descrambler CA slots with descrambling +keys (refered as control words). Return Value ------------ diff --git a/include/uapi/linux/dvb/ca.h b/include/uapi/linux/dvb/ca.h index f66ed53f4dc7..a62ddf0cebcd 100644 --- a/include/uapi/linux/dvb/ca.h +++ b/include/uapi/linux/dvb/ca.h @@ -109,9 +109,16 @@ struct ca_msg { unsigned char msg[256]; }; +/** + * struct ca_descr - CA descrambler control words info + * + * @index: CA Descrambler slot + * @parity: control words parity, where 0 means even and 1 means odd + * @cw: CA Descrambler control words + */ struct ca_descr { unsigned int index; - unsigned int parity; /* 0 == even, 1 == odd */ + unsigned int parity; unsigned char cw[8]; }; -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html