ca.h
01:
02:
03:
04: <ralph@convergence.de>
05: <marcus@convergence.de>
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24: #ifndef _DVBCA_H_
25: #define _DVBCA_H_
26:
27:
28:
29: typedef struct ca_slot_info {
30: int num;
31:
32: int type;
33: #define CA_CI 1
34: #define CA_CI_LINK 2
35: #define CA_CI_PHYS 4
36: #define CA_DESCR 8
37: #define CA_SC 128
38:
39: unsigned int flags;
40: #define CA_CI_MODULE_PRESENT 1
41: #define CA_CI_MODULE_READY 2
42: } ca_slot_info_t;
43:
44:
45:
46:
47: typedef struct ca_descr_info {
48: unsigned int num;
49: unsigned int type;
50: #define CA_ECD 1
51: #define CA_NDS 2
52: #define CA_DSS 4
53: } ca_descr_info_t;
54:
55: typedef struct ca_caps {
56: unsigned int slot_num;
57: unsigned int slot_type;
58: unsigned int descr_num;
59: unsigned int descr_type;
60: } ca_caps_t;
61:
62:
63: typedef struct ca_msg {
64: unsigned int index;
65: unsigned int type;
66: unsigned int length;
67: unsigned char msg[256];
68: } ca_msg_t;
69:
70: typedef struct ca_descr {
71: unsigned int index;
72: unsigned int parity;
73: unsigned char cw[8];
74: } ca_descr_t;
75:
76: typedef struct ca_pid {
77: unsigned int pid;
78: int index;
79: } ca_pid_t;
80:
81: #define CA_RESET _IO('o', 128)
82: #define CA_GET_CAP _IOR('o', 129, ca_caps_t)
83: #define CA_GET_SLOT_INFO _IOR('o', 130, ca_slot_info_t)
84: #define CA_GET_DESCR_INFO _IOR('o', 131, ca_descr_info_t)
85: #define CA_GET_MSG _IOR('o', 132, ca_msg_t)
86: #define CA_SEND_MSG _IOW('o', 133, ca_msg_t)
87: #define CA_SET_DESCR _IOW('o', 134, ca_descr_t)
88: #define CA_SET_PID _IOW('o', 135, ca_pid_t)
89:
90: #endif
91:
© Andrew Scott 2006 -
2025,
All Rights Reserved