blob: 51425fa94ace7a25d6a58cf9cf32583e19dad5b7 [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#define CHET_MT 0
20#define CHET_ST 1
21#define CHET_IE 2
22#define CHET_DT 3
Ben Cheng655a7c02013-10-16 16:09:24 -070023#define CHET_V1 4
24#define CHET_V2 5
25#define CHET_V3 6
26#define CHET_V4 7
Ben Cheng655a7c02013-10-16 16:09:24 -070027struct changer_params {
Tao Baod7db5942015-01-28 10:07:51 -080028 int cp_curpicker;
29 int cp_npickers;
30 int cp_nslots;
Tao Baod7db5942015-01-28 10:07:51 -080031 int cp_nportals;
32 int cp_ndrives;
Ben Cheng655a7c02013-10-16 16:09:24 -070033};
34struct changer_vendor_params {
Tao Baod7db5942015-01-28 10:07:51 -080035 int cvp_n1;
36 char cvp_label1[16];
37 int cvp_n2;
38 char cvp_label2[16];
Tao Baod7db5942015-01-28 10:07:51 -080039 int cvp_n3;
40 char cvp_label3[16];
41 int cvp_n4;
42 char cvp_label4[16];
Tao Baod7db5942015-01-28 10:07:51 -080043 int reserved[8];
Ben Cheng655a7c02013-10-16 16:09:24 -070044};
45struct changer_move {
Tao Baod7db5942015-01-28 10:07:51 -080046 int cm_fromtype;
Tao Baod7db5942015-01-28 10:07:51 -080047 int cm_fromunit;
48 int cm_totype;
49 int cm_tounit;
50 int cm_flags;
Ben Cheng655a7c02013-10-16 16:09:24 -070051};
52#define CM_INVERT 1
53struct changer_exchange {
Tao Baod7db5942015-01-28 10:07:51 -080054 int ce_srctype;
Tao Baod7db5942015-01-28 10:07:51 -080055 int ce_srcunit;
56 int ce_fdsttype;
57 int ce_fdstunit;
58 int ce_sdsttype;
Tao Baod7db5942015-01-28 10:07:51 -080059 int ce_sdstunit;
60 int ce_flags;
Ben Cheng655a7c02013-10-16 16:09:24 -070061};
62#define CE_INVERT1 1
Ben Cheng655a7c02013-10-16 16:09:24 -070063#define CE_INVERT2 2
64struct changer_position {
Tao Baod7db5942015-01-28 10:07:51 -080065 int cp_type;
66 int cp_unit;
Tao Baod7db5942015-01-28 10:07:51 -080067 int cp_flags;
Ben Cheng655a7c02013-10-16 16:09:24 -070068};
69#define CP_INVERT 1
70struct changer_element_status {
Tao Baod7db5942015-01-28 10:07:51 -080071 int ces_type;
72 unsigned char __user * ces_data;
Ben Cheng655a7c02013-10-16 16:09:24 -070073};
74#define CESTATUS_FULL 0x01
Ben Cheng655a7c02013-10-16 16:09:24 -070075#define CESTATUS_IMPEXP 0x02
76#define CESTATUS_EXCEPT 0x04
77#define CESTATUS_ACCESS 0x08
78#define CESTATUS_EXENAB 0x10
Ben Cheng655a7c02013-10-16 16:09:24 -070079#define CESTATUS_INENAB 0x20
80struct changer_get_element {
Tao Baod7db5942015-01-28 10:07:51 -080081 int cge_type;
82 int cge_unit;
Tao Baod7db5942015-01-28 10:07:51 -080083 int cge_status;
84 int cge_errno;
85 int cge_srctype;
86 int cge_srcunit;
Tao Baod7db5942015-01-28 10:07:51 -080087 int cge_id;
88 int cge_lun;
89 char cge_pvoltag[36];
90 char cge_avoltag[36];
Tao Baod7db5942015-01-28 10:07:51 -080091 int cge_flags;
Ben Cheng655a7c02013-10-16 16:09:24 -070092};
93#define CGE_ERRNO 0x01
94#define CGE_INVERT 0x02
Ben Cheng655a7c02013-10-16 16:09:24 -070095#define CGE_SRC 0x04
96#define CGE_IDLUN 0x08
97#define CGE_PVOLTAG 0x10
98#define CGE_AVOLTAG 0x20
Ben Cheng655a7c02013-10-16 16:09:24 -070099struct changer_set_voltag {
Tao Baod7db5942015-01-28 10:07:51 -0800100 int csv_type;
101 int csv_unit;
102 char csv_voltag[36];
Tao Baod7db5942015-01-28 10:07:51 -0800103 int csv_flags;
Ben Cheng655a7c02013-10-16 16:09:24 -0700104};
105#define CSV_PVOLTAG 0x01
106#define CSV_AVOLTAG 0x02
Ben Cheng655a7c02013-10-16 16:09:24 -0700107#define CSV_CLEARTAG 0x04
Tao Baod7db5942015-01-28 10:07:51 -0800108#define CHIOMOVE _IOW('c', 1, struct changer_move)
109#define CHIOEXCHANGE _IOW('c', 2, struct changer_exchange)
110#define CHIOPOSITION _IOW('c', 3, struct changer_position)
Tao Baod7db5942015-01-28 10:07:51 -0800111#define CHIOGPICKER _IOR('c', 4, int)
112#define CHIOSPICKER _IOW('c', 5, int)
113#define CHIOGPARAMS _IOR('c', 6, struct changer_params)
114#define CHIOGSTATUS _IOW('c', 8, struct changer_element_status)
Tao Baod7db5942015-01-28 10:07:51 -0800115#define CHIOGELEM _IOW('c', 16, struct changer_get_element)
116#define CHIOINITELEM _IO('c', 17)
117#define CHIOSVOLTAG _IOW('c', 18, struct changer_set_voltag)
118#define CHIOGVPARAMS _IOR('c', 19, struct changer_vendor_params)