3.4. 數字電視條件接收 kABI¶
-
struct dvb_ca_en50221¶
描述 CA 介面的結構體
定義:
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;
};
成員
owner擁有此結構的模組
read_attribute_mem用於讀取 CAM 上的屬性儲存器的函式
write_attribute_mem用於寫入 CAM 上的屬性儲存器的函式
read_cam_control用於讀取 CAM 上的控制介面的函式
write_cam_control用於讀取 CAM 上的控制介面的函式
read_data用於讀取資料(塊模式)的函式
write_data用於寫入資料(塊模式)的函式
slot_reset用於重置 CAM 插槽的函式
slot_shutdown用於關閉 CAM 插槽的函式
slot_ts_enable用於啟用 CAM 插槽上的傳輸流的函式
poll_slot_status用於輪詢插槽狀態的函式。僅在未設定 DVB_CA_FLAG_EN50221_IRQ_CAMCHANGE 時才需要。
data私有資料,供呼叫者使用。
privatedvb_ca 核心使用的不透明資料。請勿修改!
注意
read_*、write_* 和 poll_slot_status 函式將同時為不同的插槽呼叫,如果合適,需要使用鎖。不會同時訪問一個插槽。
-
void dvb_ca_en50221_camchange_irq(struct dvb_ca_en50221 *pubca, int slot, int change_type)¶
發生了 CAMCHANGE IRQ。
引數
struct dvb_ca_en50221 *pubcaCA 例項。
int slot相關的插槽。
int change_typeDVB_CA_CAMCHANGE_* 值之一
-
void dvb_ca_en50221_camready_irq(struct dvb_ca_en50221 *pubca, int slot)¶
發生了 CAMREADY IRQ。
引數
struct dvb_ca_en50221 *pubcaCA 例項。
int slot相關的插槽。
-
void dvb_ca_en50221_frda_irq(struct dvb_ca_en50221 *ca, int slot)¶
發生了 FR 或 DA IRQ。
引數
struct dvb_ca_en50221 *caCA 例項。
int slot相關的插槽。
-
int dvb_ca_en50221_init(struct dvb_adapter *dvb_adapter, struct dvb_ca_en50221 *ca, int flags, int slot_count)¶
初始化一個新的 DVB CA 裝置。
引數
struct dvb_adapter *dvb_adapterDVB 介面卡,用於附加新的 CA 裝置。
struct dvb_ca_en50221 *cadvb_ca 例項。
int flags描述 CA 裝置的標誌 (DVB_CA_EN50221_FLAG_*)。
int slot_count支援的插槽數。
描述
return 成功返回 0,失敗返回非零值
-
void dvb_ca_en50221_release(struct dvb_ca_en50221 *ca)¶
釋放 DVB CA 裝置。
引數
struct dvb_ca_en50221 *ca關聯的 dvb_ca 例項。