1<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>struct dvb_ca_en50221</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux Device Drivers"><link rel="up" href="ch06s02.html" title="Digital TV (DVB) devices"><link rel="prev" href="ch06s02.html" title="Digital TV (DVB) devices"><link rel="next" href="API-dvb-ca-en50221-camchange-irq.html" title="dvb_ca_en50221_camchange_irq"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">struct dvb_ca_en50221</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><th width="60%" align="center">Digital TV (DVB) devices</th><td width="20%" align="right"> <a accesskey="n" href="API-dvb-ca-en50221-camchange-irq.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-struct-dvb-ca-en50221"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>struct dvb_ca_en50221 — 2 Structure describing a CA interface 3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="programlisting"> 4struct dvb_ca_en50221 { 5 struct module * owner; 6 int (* read_attribute_mem) (struct dvb_ca_en50221 *ca,int slot, int address); 7 int (* write_attribute_mem) (struct dvb_ca_en50221 *ca,int slot, int address, u8 value); 8 int (* read_cam_control) (struct dvb_ca_en50221 *ca,int slot, u8 address); 9 int (* write_cam_control) (struct dvb_ca_en50221 *ca,int slot, u8 address, u8 value); 10 int (* slot_reset) (struct dvb_ca_en50221 *ca, int slot); 11 int (* slot_shutdown) (struct dvb_ca_en50221 *ca, int slot); 12 int (* slot_ts_enable) (struct dvb_ca_en50221 *ca, int slot); 13 int (* poll_slot_status) (struct dvb_ca_en50221 *ca, int slot, int open); 14 void * data; 15 void * private; 16}; </pre></div><div class="refsect1"><a name="id-1.8.3.2.5"></a><h2>Members</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term">owner</span></dt><dd><p> 17the module owning this structure 18 </p></dd><dt><span class="term">read_attribute_mem</span></dt><dd><p> 19function for reading attribute memory on the CAM 20 </p></dd><dt><span class="term">write_attribute_mem</span></dt><dd><p> 21function for writing attribute memory on the CAM 22 </p></dd><dt><span class="term">read_cam_control</span></dt><dd><p> 23function for reading the control interface on the CAM 24 </p></dd><dt><span class="term">write_cam_control</span></dt><dd><p> 25function for reading the control interface on the CAM 26 </p></dd><dt><span class="term">slot_reset</span></dt><dd><p> 27function to reset the CAM slot 28 </p></dd><dt><span class="term">slot_shutdown</span></dt><dd><p> 29function to shutdown a CAM slot 30 </p></dd><dt><span class="term">slot_ts_enable</span></dt><dd><p> 31function to enable the Transport Stream on a CAM slot 32 </p></dd><dt><span class="term">poll_slot_status</span></dt><dd><p> 33function to poll slot status. Only necessary if 34DVB_CA_FLAG_EN50221_IRQ_CAMCHANGE is not set. 35 </p></dd><dt><span class="term">data</span></dt><dd><p> 36private data, used by caller. 37 </p></dd><dt><span class="term">private</span></dt><dd><p> 38Opaque data used by the dvb_ca core. Do not modify! 39 </p></dd></dl></div></div><div class="refsect1"><a name="id-1.8.3.2.6"></a><h2>NOTE</h2><p> 40 the read_*, write_* and poll_slot_status functions will be 41 called for different slots concurrently and need to use locks where 42 and if appropriate. There will be no concurrent access to one slot. 43</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06s02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="API-dvb-ca-en50221-camchange-irq.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Digital TV (DVB) devices </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">dvb_ca_en50221_camchange_irq</span></td></tr></table></div></body></html> 44