1 /**************************************************************************** 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 23 #define CHET_V1 4 24 #define CHET_V2 5 25 #define CHET_V3 6 26 #define CHET_V4 7 27 struct changer_params { 28 int cp_curpicker; 29 int cp_npickers; 30 int cp_nslots; 31 int cp_nportals; 32 int cp_ndrives; 33 }; 34 struct changer_vendor_params { 35 int cvp_n1; 36 char cvp_label1[16]; 37 int cvp_n2; 38 char cvp_label2[16]; 39 int cvp_n3; 40 char cvp_label3[16]; 41 int cvp_n4; 42 char cvp_label4[16]; 43 int reserved[8]; 44 }; 45 struct changer_move { 46 int cm_fromtype; 47 int cm_fromunit; 48 int cm_totype; 49 int cm_tounit; 50 int cm_flags; 51 }; 52 #define CM_INVERT 1 53 struct changer_exchange { 54 int ce_srctype; 55 int ce_srcunit; 56 int ce_fdsttype; 57 int ce_fdstunit; 58 int ce_sdsttype; 59 int ce_sdstunit; 60 int ce_flags; 61 }; 62 #define CE_INVERT1 1 63 #define CE_INVERT2 2 64 struct changer_position { 65 int cp_type; 66 int cp_unit; 67 int cp_flags; 68 }; 69 #define CP_INVERT 1 70 struct changer_element_status { 71 int ces_type; 72 unsigned char __user * ces_data; 73 }; 74 #define CESTATUS_FULL 0x01 75 #define CESTATUS_IMPEXP 0x02 76 #define CESTATUS_EXCEPT 0x04 77 #define CESTATUS_ACCESS 0x08 78 #define CESTATUS_EXENAB 0x10 79 #define CESTATUS_INENAB 0x20 80 struct changer_get_element { 81 int cge_type; 82 int cge_unit; 83 int cge_status; 84 int cge_errno; 85 int cge_srctype; 86 int cge_srcunit; 87 int cge_id; 88 int cge_lun; 89 char cge_pvoltag[36]; 90 char cge_avoltag[36]; 91 int cge_flags; 92 }; 93 #define CGE_ERRNO 0x01 94 #define CGE_INVERT 0x02 95 #define CGE_SRC 0x04 96 #define CGE_IDLUN 0x08 97 #define CGE_PVOLTAG 0x10 98 #define CGE_AVOLTAG 0x20 99 struct changer_set_voltag { 100 int csv_type; 101 int csv_unit; 102 char csv_voltag[36]; 103 int csv_flags; 104 }; 105 #define CSV_PVOLTAG 0x01 106 #define CSV_AVOLTAG 0x02 107 #define CSV_CLEARTAG 0x04 108 #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) 111 #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) 115 #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) 119