€•_ÁŒsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ+/translations/zh_CN/driver-api/media/dtv-ca”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ+/translations/zh_TW/driver-api/media/dtv-ca”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ+/translations/it_IT/driver-api/media/dtv-ca”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ+/translations/ja_JP/driver-api/media/dtv-ca”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ+/translations/ko_KR/driver-api/media/dtv-ca”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ+/translations/pt_BR/driver-api/media/dtv-ca”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ+/translations/sp_SP/driver-api/media/dtv-ca”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)�”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…”�”}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒE/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca.rst”h´KubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒ"Digital TV Conditional Access kABI”h]”hŒ"Digital TV Conditional Access kABI”…”�”}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhŒindex”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”Œdvb_ca_en50221 (C struct)”Œc.dvb_ca_en50221”hNt”auh1hÝhhÊh²hh³Nh´NubhŒdesc”“”)�”}”(hhh]”(hŒdesc_signature”“”)�”}”(hŒdvb_ca_en50221”h]”hŒdesc_signature_line”“”)�”}”(hŒstruct dvb_ca_en50221”h]”(hŒdesc_sig_keyword”“”)�”}”(hŒstruct”h]”hŒstruct”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œk”ah"]”h$]”h&]”uh1hÿhhûh²hh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KubhŒdesc_sig_space”“”)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œw”ah"]”h$]”h&]”uh1jhhûh²hh³jh´KubhŒ desc_name”“”)�”}”(hŒdvb_ca_en50221”h]”hŒ desc_sig_name”“”)�”}”(hh÷h]”hŒdvb_ca_en50221”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”Œn”ah"]”h$]”h&]”uh1j(hj$ubah}”(h]”h ]”(Œsig-name”Œdescname”eh"]”h$]”h&]”hÅhÆuh1j"hhûh²hh³jh´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒ add_permalink”ˆuh1hùŒsphinx_line_type”Œ declarator”hhõh²hh³jh´Kubah}”(h]”hìah ]”(Œsig”Œ sig-object”eh"]”h$]”h&]”Œ is_multiline”ˆŒ _toc_parts”)Œ _toc_name”huh1hóh³jh´Khhðh²hubhŒ desc_content”“”)�”}”(hhh]”hŒ paragraph”“”)�”}”(hŒ#Structure describing a CA interface”h]”hŒ#Structure describing a CA interface”…”�”}”(hj[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K%hjVh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThhðh²hh³jh´Kubeh}”(h]”h ]”(Œc”Œstruct”eh"]”h$]”h&]”Œdomain”jsŒobjtype”jtŒdesctype”jtŒnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1hîh²hhhÊh³Nh´NubhŒ container”“”)�”}”(hXü**Definition**:: struct dvb_ca_en50221 { struct module *owner; int (*read_attribute_mem)(struct dvb_ca_en50221 *ca, int slot, int address); int (*write_attribute_mem)(struct dvb_ca_en50221 *ca, int slot, int address, u8 value); int (*read_cam_control)(struct dvb_ca_en50221 *ca, int slot, u8 address); int (*write_cam_control)(struct dvb_ca_en50221 *ca, int slot, u8 address, u8 value); int (*read_data)(struct dvb_ca_en50221 *ca, int slot, u8 *ebuf, int ecount); int (*write_data)(struct dvb_ca_en50221 *ca, int slot, u8 *ebuf, int ecount); int (*slot_reset)(struct dvb_ca_en50221 *ca, int slot); int (*slot_shutdown)(struct dvb_ca_en50221 *ca, int slot); int (*slot_ts_enable)(struct dvb_ca_en50221 *ca, int slot); int (*poll_slot_status)(struct dvb_ca_en50221 *ca, int slot, int open); void *data; void *private; }; **Members** ``owner`` the module owning this structure ``read_attribute_mem`` function for reading attribute memory on the CAM ``write_attribute_mem`` function for writing attribute memory on the CAM ``read_cam_control`` function for reading the control interface on the CAM ``write_cam_control`` function for reading the control interface on the CAM ``read_data`` function for reading data (block mode) ``write_data`` function for writing data (block mode) ``slot_reset`` function to reset the CAM slot ``slot_shutdown`` function to shutdown a CAM slot ``slot_ts_enable`` function to enable the Transport Stream on a CAM slot ``poll_slot_status`` function to poll slot status. Only necessary if DVB_CA_FLAG_EN50221_IRQ_CAMCHANGE is not set. ``data`` private data, used by caller. ``private`` Opaque data used by the dvb_ca core. Do not modify!”h]”(jZ)�”}”(hŒ**Definition**::”h]”(hŒstrong”“”)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjŠh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhj„ubhŒ:”…”�”}”(hj„h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K)hj€ubhŒ literal_block”“”)�”}”(hXUstruct dvb_ca_en50221 { struct module *owner; int (*read_attribute_mem)(struct dvb_ca_en50221 *ca, int slot, int address); int (*write_attribute_mem)(struct dvb_ca_en50221 *ca, int slot, int address, u8 value); int (*read_cam_control)(struct dvb_ca_en50221 *ca, int slot, u8 address); int (*write_cam_control)(struct dvb_ca_en50221 *ca, int slot, u8 address, u8 value); int (*read_data)(struct dvb_ca_en50221 *ca, int slot, u8 *ebuf, int ecount); int (*write_data)(struct dvb_ca_en50221 *ca, int slot, u8 *ebuf, int ecount); int (*slot_reset)(struct dvb_ca_en50221 *ca, int slot); int (*slot_shutdown)(struct dvb_ca_en50221 *ca, int slot); int (*slot_ts_enable)(struct dvb_ca_en50221 *ca, int slot); int (*poll_slot_status)(struct dvb_ca_en50221 *ca, int slot, int open); void *data; void *private; };”h]”hXUstruct dvb_ca_en50221 { struct module *owner; int (*read_attribute_mem)(struct dvb_ca_en50221 *ca, int slot, int address); int (*write_attribute_mem)(struct dvb_ca_en50221 *ca, int slot, int address, u8 value); int (*read_cam_control)(struct dvb_ca_en50221 *ca, int slot, u8 address); int (*write_cam_control)(struct dvb_ca_en50221 *ca, int slot, u8 address, u8 value); int (*read_data)(struct dvb_ca_en50221 *ca, int slot, u8 *ebuf, int ecount); int (*write_data)(struct dvb_ca_en50221 *ca, int slot, u8 *ebuf, int ecount); int (*slot_reset)(struct dvb_ca_en50221 *ca, int slot); int (*slot_shutdown)(struct dvb_ca_en50221 *ca, int slot); int (*slot_ts_enable)(struct dvb_ca_en50221 *ca, int slot); int (*poll_slot_status)(struct dvb_ca_en50221 *ca, int slot, int open); void *data; void *private; };”…”�”}”hj¥sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j£h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K+hj€ubjZ)�”}”(hŒ **Members**”h]”j‰)�”}”(hj¶h]”hŒMembers”…”�”}”(hj¸h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhj´ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K;hj€ubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒ+``owner`` the module owning this structure ”h]”(hŒterm”“”)�”}”(hŒ ``owner``”h]”hŒliteral”“”)�”}”(hjÛh]”hŒowner”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjÙubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K(hjÓubhŒ definition”“”)�”}”(hhh]”jZ)�”}”(hŒ the module owning this structure”h]”hŒ the module owning this structure”…”�”}”(hjøh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jòh´K(hjõubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÓubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jòh´K(hjÎubjÒ)�”}”(hŒH``read_attribute_mem`` function for reading attribute memory on the CAM ”h]”(jØ)�”}”(hŒ``read_attribute_mem``”h]”jÞ)�”}”(hjh]”hŒread_attribute_mem”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K)hjubjô)�”}”(hhh]”jZ)�”}”(hŒ0function for reading attribute memory on the CAM”h]”hŒ0function for reading attribute memory on the CAM”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j-h´K)hj.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j-h´K)hjÎubjÒ)�”}”(hŒI``write_attribute_mem`` function for writing attribute memory on the CAM ”h]”(jØ)�”}”(hŒ``write_attribute_mem``”h]”jÞ)�”}”(hjQh]”hŒwrite_attribute_mem”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjOubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K*hjKubjô)�”}”(hhh]”jZ)�”}”(hŒ0function for writing attribute memory on the CAM”h]”hŒ0function for writing attribute memory on the CAM”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jfh´K*hjgubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjKubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jfh´K*hjÎubjÒ)�”}”(hŒK``read_cam_control`` function for reading the control interface on the CAM ”h]”(jØ)�”}”(hŒ``read_cam_control``”h]”jÞ)�”}”(hjŠh]”hŒread_cam_control”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjˆubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K+hj„ubjô)�”}”(hhh]”jZ)�”}”(hŒ5function for reading the control interface on the CAM”h]”hŒ5function for reading the control interface on the CAM”…”�”}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jŸh´K+hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj„ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jŸh´K+hjÎubjÒ)�”}”(hŒL``write_cam_control`` function for reading the control interface on the CAM ”h]”(jØ)�”}”(hŒ``write_cam_control``”h]”jÞ)�”}”(hjÃh]”hŒwrite_cam_control”…”�”}”(hjÅh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjÁubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K,hj½ubjô)�”}”(hhh]”jZ)�”}”(hŒ5function for reading the control interface on the CAM”h]”hŒ5function for reading the control interface on the CAM”…”�”}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jØh´K,hjÙubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj½ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jØh´K,hjÎubjÒ)�”}”(hŒ5``read_data`` function for reading data (block mode) ”h]”(jØ)�”}”(hŒ ``read_data``”h]”jÞ)�”}”(hjüh]”hŒ read_data”…”�”}”(hjþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjúubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K-hjöubjô)�”}”(hhh]”jZ)�”}”(hŒ&function for reading data (block mode)”h]”hŒ&function for reading data (block mode)”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jh´K-hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjöubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jh´K-hjÎubjÒ)�”}”(hŒ6``write_data`` function for writing data (block mode) ”h]”(jØ)�”}”(hŒ``write_data``”h]”jÞ)�”}”(hj5h]”hŒ write_data”…”�”}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K.hj/ubjô)�”}”(hhh]”jZ)�”}”(hŒ&function for writing data (block mode)”h]”hŒ&function for writing data (block mode)”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jJh´K.hjKubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jJh´K.hjÎubjÒ)�”}”(hŒ.``slot_reset`` function to reset the CAM slot ”h]”(jØ)�”}”(hŒ``slot_reset``”h]”jÞ)�”}”(hjnh]”hŒ slot_reset”…”�”}”(hjph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjlubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K/hjhubjô)�”}”(hhh]”jZ)�”}”(hŒfunction to reset the CAM slot”h]”hŒfunction to reset the CAM slot”…”�”}”(hj‡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jƒh´K/hj„ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjhubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jƒh´K/hjÎubjÒ)�”}”(hŒ2``slot_shutdown`` function to shutdown a CAM slot ”h]”(jØ)�”}”(hŒ``slot_shutdown``”h]”jÞ)�”}”(hj§h]”hŒ slot_shutdown”…”�”}”(hj©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhj¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K0hj¡ubjô)�”}”(hhh]”jZ)�”}”(hŒfunction to shutdown a CAM slot”h]”hŒfunction to shutdown a CAM slot”…”�”}”(hjÀh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j¼h´K0hj½ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj¡ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j¼h´K0hjÎubjÒ)�”}”(hŒI``slot_ts_enable`` function to enable the Transport Stream on a CAM slot ”h]”(jØ)�”}”(hŒ``slot_ts_enable``”h]”jÞ)�”}”(hjàh]”hŒslot_ts_enable”…”�”}”(hjâh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjÞubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K1hjÚubjô)�”}”(hhh]”jZ)�”}”(hŒ5function to enable the Transport Stream on a CAM slot”h]”hŒ5function to enable the Transport Stream on a CAM slot”…”�”}”(hjùh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jõh´K1hjöubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÚubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jõh´K1hjÎubjÒ)�”}”(hŒs``poll_slot_status`` function to poll slot status. Only necessary if DVB_CA_FLAG_EN50221_IRQ_CAMCHANGE is not set. ”h]”(jØ)�”}”(hŒ``poll_slot_status``”h]”jÞ)�”}”(hjh]”hŒpoll_slot_status”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K3hjubjô)�”}”(hhh]”jZ)�”}”(hŒ]function to poll slot status. Only necessary if DVB_CA_FLAG_EN50221_IRQ_CAMCHANGE is not set.”h]”hŒ]function to poll slot status. Only necessary if DVB_CA_FLAG_EN50221_IRQ_CAMCHANGE is not set.”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K2hj/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j.h´K3hjÎubjÒ)�”}”(hŒ'``data`` private data, used by caller. ”h]”(jØ)�”}”(hŒ``data``”h]”jÞ)�”}”(hjSh]”hŒdata”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjQubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K4hjMubjô)�”}”(hhh]”jZ)�”}”(hŒprivate data, used by caller.”h]”hŒprivate data, used by caller.”…”�”}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jhh´K4hjiubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjMubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jhh´K4hjÎubjÒ)�”}”(hŒ?``private`` Opaque data used by the dvb_ca core. Do not modify!”h]”(jØ)�”}”(hŒ ``private``”h]”jÞ)�”}”(hjŒh]”hŒprivate”…”�”}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjŠubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K4hj†ubjô)�”}”(hhh]”jZ)�”}”(hŒ3Opaque data used by the dvb_ca core. Do not modify!”h]”hŒ3Opaque data used by the dvb_ca core. Do not modify!”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K5hj¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj†ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j¡h´K4hjÎubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÌhj€ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubjZ)�”}”(hŒ**NOTE**”h]”j‰)�”}”(hjÏh]”hŒNOTE”…”�”}”(hjÑh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhjÍubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K8hhÊh²hubjZ)�”}”(hŒÂthe read_*, write_* and poll_slot_status functions will be called for different slots concurrently and need to use locks where and if appropriate. There will be no concurrent access to one slot.”h]”hŒÂthe read_*, write_* and poll_slot_status functions will be called for different slots concurrently and need to use locks where and if appropriate. There will be no concurrent access to one slot.”…”�”}”(hjåh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K6hhÊh²hubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ)dvb_ca_en50221_camchange_irq (C function)”Œc.dvb_ca_en50221_camchange_irq”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ[void dvb_ca_en50221_camchange_irq (struct dvb_ca_en50221 *pubca, int slot, int change_type)”h]”hú)�”}”(hŒZvoid dvb_ca_en50221_camchange_irq(struct dvb_ca_en50221 *pubca, int slot, int change_type)”h]”(hŒdesc_sig_keyword_type”“”)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œkt”ah"]”h$]”h&]”uh1j hj h²hh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K\ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj h²hh³jh´K\ubj#)�”}”(hŒdvb_ca_en50221_camchange_irq”h]”j))�”}”(hŒdvb_ca_en50221_camchange_irq”h]”hŒdvb_ca_en50221_camchange_irq”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj-ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj h²hh³jh´K\ubhŒdesc_parameterlist”“”)�”}”(hŒ9(struct dvb_ca_en50221 *pubca, int slot, int change_type)”h]”(hŒdesc_parameter”“”)�”}”(hŒstruct dvb_ca_en50221 *pubca”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hjQh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjMubh)�”}”(hhh]”j))�”}”(hŒdvb_ca_en50221”h]”hŒdvb_ca_en50221”…”�”}”(hjoh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjlubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”Œ identifier”Œ reftarget”jqŒmodname”NŒ classname”NŒ c:parent_key”Œsphinx.domains.c”Œ LookupKey”“”)�”}”Œdata”]”jŠŒ ASTIdentifier”“”)�”}”j…j3sbŒc.dvb_ca_en50221_camchange_irq”†”asbuh1hhjMubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj—h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjMubhŒdesc_sig_punctuation”“”)�”}”(hŒ*”h]”hŒ*”…”�”}”(hj§h²hh³Nh´Nubah}”(h]”h ]”Œp”ah"]”h$]”h&]”uh1j¥hjMubj))�”}”(hŒpubca”h]”hŒpubca”…”�”}”(hj¶h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjMubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhjGubjL)�”}”(hŒint slot”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjÏh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hjËubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÝh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjËubj))�”}”(hŒslot”h]”hŒslot”…”�”}”(hjëh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjËubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhjGubjL)�”}”(hŒint change_type”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjubj))�”}”(hŒ change_type”h]”hŒ change_type”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhjGubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jEhj h²hh³jh´K\ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjh²hh³jh´K\ubah}”(h]”jah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jh´K\hjh²hubjU)�”}”(hhh]”jZ)�”}”(hŒA CAMCHANGE IRQ has occurred.”h]”hŒA CAMCHANGE IRQ has occurred.”…”�”}”(hjJh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K\hjGh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjh²hh³jh´K\ubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjbjzjbj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ›**Parameters** ``struct dvb_ca_en50221 *pubca`` CA instance. ``int slot`` Slot concerned. ``int change_type`` One of the DVB_CA_CAMCHANGE_* values”h]”(jZ)�”}”(hŒ**Parameters**”h]”j‰)�”}”(hjlh]”hŒ Parameters”…”�”}”(hjnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhjjubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K`hjfubjÍ)�”}”(hhh]”(jÒ)�”}”(hŒ.``struct dvb_ca_en50221 *pubca`` CA instance. ”h]”(jØ)�”}”(hŒ ``struct dvb_ca_en50221 *pubca``”h]”jÞ)�”}”(hj‹h]”hŒstruct dvb_ca_en50221 *pubca”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhj‰ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K^hj…ubjô)�”}”(hhh]”jZ)�”}”(hŒ CA instance.”h]”hŒ CA instance.”…”�”}”(hj¤h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j h´K^hj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj…ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j h´K^hj‚ubjÒ)�”}”(hŒ``int slot`` Slot concerned. ”h]”(jØ)�”}”(hŒ ``int slot``”h]”jÞ)�”}”(hjÄh]”hŒint slot”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjÂubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K_hj¾ubjô)�”}”(hhh]”jZ)�”}”(hŒSlot concerned.”h]”hŒSlot concerned.”…”�”}”(hjÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÙh´K_hjÚubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj¾ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jÙh´K_hj‚ubjÒ)�”}”(hŒ8``int change_type`` One of the DVB_CA_CAMCHANGE_* values”h]”(jØ)�”}”(hŒ``int change_type``”h]”jÞ)�”}”(hjýh]”hŒint change_type”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjûubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Kahj÷ubjô)�”}”(hhh]”jZ)�”}”(hŒ$One of the DVB_CA_CAMCHANGE_* values”h]”hŒ$One of the DVB_CA_CAMCHANGE_* values”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K`hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj÷ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jh´Kahj‚ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÌhjfubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ(dvb_ca_en50221_camready_irq (C function)”Œc.dvb_ca_en50221_camready_irq”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒIvoid dvb_ca_en50221_camready_irq (struct dvb_ca_en50221 *pubca, int slot)”h]”hú)�”}”(hŒHvoid dvb_ca_en50221_camready_irq(struct dvb_ca_en50221 *pubca, int slot)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjWh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hjSh²hh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Kfubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjSh²hh³jeh´Kfubj#)�”}”(hŒdvb_ca_en50221_camready_irq”h]”j))�”}”(hŒdvb_ca_en50221_camready_irq”h]”hŒdvb_ca_en50221_camready_irq”…”�”}”(hjxh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjtubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjSh²hh³jeh´KfubjF)�”}”(hŒ((struct dvb_ca_en50221 *pubca, int slot)”h]”(jL)�”}”(hŒstruct dvb_ca_en50221 *pubca”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj”h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj�ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¡h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�ubh)�”}”(hhh]”j))�”}”(hŒdvb_ca_en50221”h]”hŒdvb_ca_en50221”…”�”}”(hj²h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj¯ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”j…Œ reftarget”j´Œmodname”NŒ classname”Nj‰jŒ)�”}”j�]”j’)�”}”j…jzsbŒc.dvb_ca_en50221_camready_irq”†”asbuh1hhj�ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�ubj¦)�”}”(hj©h]”hŒ*”…”�”}”(hjàh²hh³Nh´Nubah}”(h]”h ]”j²ah"]”h$]”h&]”uh1j¥hj�ubj))�”}”(hŒpubca”h]”hŒpubca”…”�”}”(hjíh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj�ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhjŒubjL)�”}”(hŒint slot”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjubj))�”}”(hŒslot”h]”hŒslot”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhjŒubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jEhjSh²hh³jeh´Kfubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjOh²hh³jeh´Kfubah}”(h]”jJah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³jeh´KfhjLh²hubjU)�”}”(hhh]”jZ)�”}”(hŒA CAMREADY IRQ has occurred.”h]”hŒA CAMREADY IRQ has occurred.”…”�”}”(hjLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KfhjIh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjLh²hh³jeh´Kfubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjdjzjdj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ_**Parameters** ``struct dvb_ca_en50221 *pubca`` CA instance. ``int slot`` Slot concerned.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j‰)�”}”(hjnh]”hŒ Parameters”…”�”}”(hjph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhjlubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KjhjhubjÍ)�”}”(hhh]”(jÒ)�”}”(hŒ.``struct dvb_ca_en50221 *pubca`` CA instance. ”h]”(jØ)�”}”(hŒ ``struct dvb_ca_en50221 *pubca``”h]”jÞ)�”}”(hj�h]”hŒstruct dvb_ca_en50221 *pubca”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhj‹ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Khhj‡ubjô)�”}”(hhh]”jZ)�”}”(hŒ CA instance.”h]”hŒ CA instance.”…”�”}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j¢h´Khhj£ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj‡ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j¢h´Khhj„ubjÒ)�”}”(hŒ``int slot`` Slot concerned.”h]”(jØ)�”}”(hŒ ``int slot``”h]”jÞ)�”}”(hjÆh]”hŒint slot”…”�”}”(hjÈh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjÄubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KjhjÀubjô)�”}”(hhh]”jZ)�”}”(hŒSlot concerned.”h]”hŒSlot concerned.”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KihjÜubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÀubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jÛh´Kjhj„ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÌhjhubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ$dvb_ca_en50221_frda_irq (C function)”Œc.dvb_ca_en50221_frda_irq”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒBvoid dvb_ca_en50221_frda_irq (struct dvb_ca_en50221 *ca, int slot)”h]”hú)�”}”(hŒAvoid dvb_ca_en50221_frda_irq(struct dvb_ca_en50221 *ca, int slot)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hj h²hh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Knubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj/ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj h²hh³j. h´Knubj#)�”}”(hŒdvb_ca_en50221_frda_irq”h]”j))�”}”(hŒdvb_ca_en50221_frda_irq”h]”hŒdvb_ca_en50221_frda_irq”…”�”}”(hjA h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj= ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hj h²hh³j. h´KnubjF)�”}”(hŒ%(struct dvb_ca_en50221 *ca, int slot)”h]”(jL)�”}”(hŒstruct dvb_ca_en50221 *ca”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj] h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhjY ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjY ubh)�”}”(hhh]”j))�”}”(hŒdvb_ca_en50221”h]”hŒdvb_ca_en50221”…”�”}”(hj{ h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjx ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”j…Œ reftarget”j} Œmodname”NŒ classname”Nj‰jŒ)�”}”j�]”j’)�”}”j…jC sbŒc.dvb_ca_en50221_frda_irq”†”asbuh1hhjY ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj› h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjY ubj¦)�”}”(hj©h]”hŒ*”…”�”}”(hj© h²hh³Nh´Nubah}”(h]”h ]”j²ah"]”h$]”h&]”uh1j¥hjY ubj))�”}”(hŒca”h]”hŒca”…”�”}”(hj¶ h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjY ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhjU ubjL)�”}”(hŒint slot”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjÏ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hjË ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÝ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjË ubj))�”}”(hŒslot”h]”hŒslot”…”�”}”(hjë h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjË ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhjU ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jEhj h²hh³j. h´Knubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhj h²hh³j. h´Knubah}”(h]”j ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j. h´Knhj h²hubjU)�”}”(hhh]”jZ)�”}”(hŒAn FR or a DA IRQ has occurred.”h]”hŒAn FR or a DA IRQ has occurred.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Knhj h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThj h²hh³j. h´Knubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj- jzj- j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒ\**Parameters** ``struct dvb_ca_en50221 *ca`` CA instance. ``int slot`` Slot concerned.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j‰)�”}”(hj7 h]”hŒ Parameters”…”�”}”(hj9 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhj5 ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Krhj1 ubjÍ)�”}”(hhh]”(jÒ)�”}”(hŒ+``struct dvb_ca_en50221 *ca`` CA instance. ”h]”(jØ)�”}”(hŒ``struct dvb_ca_en50221 *ca``”h]”jÞ)�”}”(hjV h]”hŒstruct dvb_ca_en50221 *ca”…”�”}”(hjX h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjT ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KphjP ubjô)�”}”(hhh]”jZ)�”}”(hŒ CA instance.”h]”hŒ CA instance.”…”�”}”(hjo h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jk h´Kphjl ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjP ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jk h´KphjM ubjÒ)�”}”(hŒ``int slot`` Slot concerned.”h]”(jØ)�”}”(hŒ ``int slot``”h]”jÞ)�”}”(hj� h]”hŒint slot”…”�”}”(hj‘ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhj� ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Krhj‰ ubjô)�”}”(hhh]”jZ)�”}”(hŒSlot concerned.”h]”hŒSlot concerned.”…”�”}”(hj¨ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Kqhj¥ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj‰ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j¤ h´KrhjM ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÌhj1 ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ dvb_ca_en50221_init (C function)”Œc.dvb_ca_en50221_init”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒoint dvb_ca_en50221_init (struct dvb_adapter *dvb_adapter, struct dvb_ca_en50221 *ca, int flags, int slot_count)”h]”hú)�”}”(hŒnint dvb_ca_en50221_init(struct dvb_adapter *dvb_adapter, struct dvb_ca_en50221 *ca, int flags, int slot_count)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjé h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hjå h²hh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Kzubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjø h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjå h²hh³j÷ h´Kzubj#)�”}”(hŒdvb_ca_en50221_init”h]”j))�”}”(hŒdvb_ca_en50221_init”h]”hŒdvb_ca_en50221_init”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj ubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjå h²hh³j÷ h´KzubjF)�”}”(hŒW(struct dvb_adapter *dvb_adapter, struct dvb_ca_en50221 *ca, int flags, int slot_count)”h]”(jL)�”}”(hŒstruct dvb_adapter *dvb_adapter”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj& h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj" ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj3 h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj" ubh)�”}”(hhh]”j))�”}”(hŒ dvb_adapter”h]”hŒ dvb_adapter”…”�”}”(hjD h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjA ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”j…Œ reftarget”jF Œmodname”NŒ classname”Nj‰jŒ)�”}”j�]”j’)�”}”j…j sbŒc.dvb_ca_en50221_init”†”asbuh1hhj" ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjd h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj" ubj¦)�”}”(hj©h]”hŒ*”…”�”}”(hjr h²hh³Nh´Nubah}”(h]”h ]”j²ah"]”h$]”h&]”uh1j¥hj" ubj))�”}”(hŒ dvb_adapter”h]”hŒ dvb_adapter”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj" ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhj ubjL)�”}”(hŒstruct dvb_ca_en50221 *ca”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj˜ h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj” ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¥ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj” ubh)�”}”(hhh]”j))�”}”(hŒdvb_ca_en50221”h]”hŒdvb_ca_en50221”…”�”}”(hj¶ h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj³ ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”j…Œ reftarget”j¸ Œmodname”NŒ classname”Nj‰jŒ)�”}”j�]”j` Œc.dvb_ca_en50221_init”†”asbuh1hhj” ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÔ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj” ubj¦)�”}”(hj©h]”hŒ*”…”�”}”(hjâ h²hh³Nh´Nubah}”(h]”h ]”j²ah"]”h$]”h&]”uh1j¥hj” ubj))�”}”(hŒca”h]”hŒca”…”�”}”(hjï h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj” ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhj ubjL)�”}”(hŒ int flags”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hj ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj ubj))�”}”(hŒflags”h]”hŒflags”…”�”}”(hj$ h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhj ubjL)�”}”(hŒint slot_count”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj= h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hj9 ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjK h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj9 ubj))�”}”(hŒ slot_count”h]”hŒ slot_count”…”�”}”(hjY h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj9 ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhj ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jEhjå h²hh³j÷ h´Kzubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjá h²hh³j÷ h´Kzubah}”(h]”jÜ ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j÷ h´KzhjÞ h²hubjU)�”}”(hhh]”jZ)�”}”(hŒInitialise a new DVB CA device.”h]”hŒInitialise a new DVB CA device.”…”�”}”(hjƒ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Kzhj€ h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjÞ h²hh³j÷ h´Kzubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyj› jzj› j{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hXO**Parameters** ``struct dvb_adapter *dvb_adapter`` DVB adapter to attach the new CA device to. ``struct dvb_ca_en50221 *ca`` The dvb_ca instance. ``int flags`` Flags describing the CA device (DVB_CA_EN50221_FLAG_*). ``int slot_count`` Number of slots supported. **Description** **return** 0 on success, nonzero on failure”h]”(jZ)�”}”(hŒ**Parameters**”h]”j‰)�”}”(hj¥ h]”hŒ Parameters”…”�”}”(hj§ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhj£ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K~hjŸ ubjÍ)�”}”(hhh]”(jÒ)�”}”(hŒP``struct dvb_adapter *dvb_adapter`` DVB adapter to attach the new CA device to. ”h]”(jØ)�”}”(hŒ#``struct dvb_adapter *dvb_adapter``”h]”jÞ)�”}”(hjÄ h]”hŒstruct dvb_adapter *dvb_adapter”…”�”}”(hjÆ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K|hj¾ ubjô)�”}”(hhh]”jZ)�”}”(hŒ+DVB adapter to attach the new CA device to.”h]”hŒ+DVB adapter to attach the new CA device to.”…”�”}”(hjÝ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jÙ h´K|hjÚ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj¾ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jÙ h´K|hj» ubjÒ)�”}”(hŒ3``struct dvb_ca_en50221 *ca`` The dvb_ca instance. ”h]”(jØ)�”}”(hŒ``struct dvb_ca_en50221 *ca``”h]”jÞ)�”}”(hjý h]”hŒstruct dvb_ca_en50221 *ca”…”�”}”(hjÿ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjû ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K}hj÷ ubjô)�”}”(hhh]”jZ)�”}”(hŒThe dvb_ca instance.”h]”hŒThe dvb_ca instance.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j h´K}hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj÷ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j h´K}hj» ubjÒ)�”}”(hŒF``int flags`` Flags describing the CA device (DVB_CA_EN50221_FLAG_*). ”h]”(jØ)�”}”(hŒ ``int flags``”h]”jÞ)�”}”(hj6 h]”hŒ int flags”…”�”}”(hj8 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhj4 ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K~hj0 ubjô)�”}”(hhh]”jZ)�”}”(hŒ7Flags describing the CA device (DVB_CA_EN50221_FLAG_*).”h]”hŒ7Flags describing the CA device (DVB_CA_EN50221_FLAG_*).”…”�”}”(hjO h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³jK h´K~hjL ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhj0 ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jK h´K~hj» ubjÒ)�”}”(hŒ.``int slot_count`` Number of slots supported. ”h]”(jØ)�”}”(hŒ``int slot_count``”h]”jÞ)�”}”(hjo h]”hŒint slot_count”…”�”}”(hjq h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjm ubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Khji ubjô)�”}”(hhh]”jZ)�”}”(hŒNumber of slots supported.”h]”hŒNumber of slots supported.”…”�”}”(hjˆ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³j„ h´Khj… ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhji ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³j„ h´Khj» ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÌhjŸ ubjZ)�”}”(hŒ**Description**”h]”j‰)�”}”(hjª h]”hŒ Description”…”�”}”(hj¬ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhj¨ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K�hjŸ ubjZ)�”}”(hŒ+**return** 0 on success, nonzero on failure”h]”(j‰)�”}”(hŒ **return**”h]”hŒreturn”…”�”}”(hjÄ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhjÀ ubhŒ! 0 on success, nonzero on failure”…”�”}”(hjÀ h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´K€hjŸ ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´NubhÞ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(hêŒ#dvb_ca_en50221_release (C function)”Œc.dvb_ca_en50221_release”hNt”auh1hÝhhÊh²hh³Nh´Nubhï)�”}”(hhh]”(hô)�”}”(hŒ7void dvb_ca_en50221_release (struct dvb_ca_en50221 *ca)”h]”hú)�”}”(hŒ6void dvb_ca_en50221_release(struct dvb_ca_en50221 *ca)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjý h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1j hjù h²hh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Kˆubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjù h²hh³j h´Kˆubj#)�”}”(hŒdvb_ca_en50221_release”h]”j))�”}”(hŒdvb_ca_en50221_release”h]”hŒdvb_ca_en50221_release”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjubah}”(h]”h ]”(j;j<eh"]”h$]”h&]”hÅhÆuh1j"hjù h²hh³j h´KˆubjF)�”}”(hŒ(struct dvb_ca_en50221 *ca)”h]”jL)�”}”(hŒstruct dvb_ca_en50221 *ca”h]”(j)�”}”(hjh]”hŒstruct”…”�”}”(hj:h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hÿhj6ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjGh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj6ubh)�”}”(hhh]”j))�”}”(hŒdvb_ca_en50221”h]”hŒdvb_ca_en50221”…”�”}”(hjXh²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hjUubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jsŒreftype”j…Œ reftarget”jZŒmodname”NŒ classname”Nj‰jŒ)�”}”j�]”j’)�”}”j…j sbŒc.dvb_ca_en50221_release”†”asbuh1hhj6ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjxh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj6ubj¦)�”}”(hj©h]”hŒ*”…”�”}”(hj†h²hh³Nh´Nubah}”(h]”h ]”j²ah"]”h$]”h&]”uh1j¥hj6ubj))�”}”(hŒca”h]”hŒca”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”j4ah"]”h$]”h&]”uh1j(hj6ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jKhj2ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jEhjù h²hh³j h´Kˆubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjFˆuh1hùjGjHhjõ h²hh³j h´Kˆubah}”(h]”jð ah ]”(jLjMeh"]”h$]”h&]”jQˆjR)jShuh1hóh³j h´Kˆhjò h²hubjU)�”}”(hhh]”jZ)�”}”(hŒRelease a DVB CA device.”h]”hŒRelease a DVB CA device.”…”�”}”(hj½h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´Kˆhjºh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jThjò h²hh³j h´Kˆubeh}”(h]”h ]”(jsŒfunction”eh"]”h$]”h&]”jxjsjyjÕjzjÕj{‰j|‰j}‰uh1hîh²hhhÊh³Nh´Nubj)�”}”(hŒO**Parameters** ``struct dvb_ca_en50221 *ca`` The associated dvb_ca instance.”h]”(jZ)�”}”(hŒ**Parameters**”h]”j‰)�”}”(hjßh]”hŒ Parameters”…”�”}”(hjáh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jˆhjÝubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KŒhjÙubjÍ)�”}”(hhh]”jÒ)�”}”(hŒ=``struct dvb_ca_en50221 *ca`` The associated dvb_ca instance.”h]”(jØ)�”}”(hŒ``struct dvb_ca_en50221 *ca``”h]”jÞ)�”}”(hjþh]”hŒstruct dvb_ca_en50221 *ca”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjüubah}”(h]”h ]”h"]”h$]”h&]”uh1j×h³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KŽhjøubjô)�”}”(hhh]”jZ)�”}”(hŒThe associated dvb_ca instance.”h]”hŒThe associated dvb_ca instance.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYh³Œe/var/lib/git/docbuild/linux/Documentation/driver-api/media/dtv-ca:6: ./include/media/dvb_ca_en50221.h”h´KŠhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjøubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÑh³jh´KŽhjõubah}”(h]”h ]”h"]”h$]”h&]”uh1jÌhjÙubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1j~hhÊh²hh³Nh´Nubeh}”(h]”Œ"digital-tv-conditional-access-kabi”ah ]”h"]”Œ"digital tv conditional access kabi”ah$]”h&]”uh1hÈhhh²hh³hÇh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hÍNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jjŒerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”jDjAsŒ nametypes”}”jD‰sh}”(jAhÊhìhõjjjJjOj j jÜ já jð jõ uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.