blob: fa977c7b90cbfc6601c0a581d54f38d18c0082bb [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _DVBCA_H_
20#define _DVBCA_H_
Christopher Ferris1308ad32017-11-14 17:32:13 -080021struct ca_slot_info {
Tao Baod7db5942015-01-28 10:07:51 -080022 int num;
Tao Baod7db5942015-01-28 10:07:51 -080023 int type;
Ben Cheng655a7c02013-10-16 16:09:24 -070024#define CA_CI 1
25#define CA_CI_LINK 2
26#define CA_CI_PHYS 4
Ben Cheng655a7c02013-10-16 16:09:24 -070027#define CA_DESCR 8
28#define CA_SC 128
Tao Baod7db5942015-01-28 10:07:51 -080029 unsigned int flags;
Ben Cheng655a7c02013-10-16 16:09:24 -070030#define CA_CI_MODULE_PRESENT 1
Ben Cheng655a7c02013-10-16 16:09:24 -070031#define CA_CI_MODULE_READY 2
Christopher Ferris1308ad32017-11-14 17:32:13 -080032};
33struct ca_descr_info {
Tao Baod7db5942015-01-28 10:07:51 -080034 unsigned int num;
Tao Baod7db5942015-01-28 10:07:51 -080035 unsigned int type;
Ben Cheng655a7c02013-10-16 16:09:24 -070036#define CA_ECD 1
37#define CA_NDS 2
38#define CA_DSS 4
Christopher Ferris1308ad32017-11-14 17:32:13 -080039};
40struct ca_caps {
Tao Baod7db5942015-01-28 10:07:51 -080041 unsigned int slot_num;
42 unsigned int slot_type;
Tao Baod7db5942015-01-28 10:07:51 -080043 unsigned int descr_num;
44 unsigned int descr_type;
Christopher Ferris1308ad32017-11-14 17:32:13 -080045};
46struct ca_msg {
Tao Baod7db5942015-01-28 10:07:51 -080047 unsigned int index;
48 unsigned int type;
49 unsigned int length;
50 unsigned char msg[256];
Christopher Ferris1308ad32017-11-14 17:32:13 -080051};
52struct ca_descr {
Tao Baod7db5942015-01-28 10:07:51 -080053 unsigned int index;
54 unsigned int parity;
Tao Baod7db5942015-01-28 10:07:51 -080055 unsigned char cw[8];
Christopher Ferris1308ad32017-11-14 17:32:13 -080056};
Ben Cheng655a7c02013-10-16 16:09:24 -070057#define CA_RESET _IO('o', 128)
Christopher Ferris1308ad32017-11-14 17:32:13 -080058#define CA_GET_CAP _IOR('o', 129, struct ca_caps)
59#define CA_GET_SLOT_INFO _IOR('o', 130, struct ca_slot_info)
60#define CA_GET_DESCR_INFO _IOR('o', 131, struct ca_descr_info)
61#define CA_GET_MSG _IOR('o', 132, struct ca_msg)
62#define CA_SEND_MSG _IOW('o', 133, struct ca_msg)
63#define CA_SET_DESCR _IOW('o', 134, struct ca_descr)
64typedef struct ca_slot_info ca_slot_info_t;
65typedef struct ca_descr_info ca_descr_info_t;
66typedef struct ca_caps ca_caps_t;
67typedef struct ca_msg ca_msg_t;
68typedef struct ca_descr ca_descr_t;
Ben Cheng655a7c02013-10-16 16:09:24 -070069#endif