| /**************************************************************************** | |
| **************************************************************************** | |
| *** | |
| *** This header was automatically generated from a Linux kernel header | |
| *** of the same name, to make information necessary for userspace to | |
| *** call into the kernel available to libc. It contains only constants, | |
| *** structures, and macros generated from the original header, and thus, | |
| *** contains no copyrightable information. | |
| *** | |
| *** To edit the content of this header, modify the corresponding | |
| *** source file (e.g. under external/kernel-headers/original/) then | |
| *** run bionic/libc/kernel/tools/update_all.py | |
| *** | |
| *** Any manual change here will be lost the next time this script will | |
| *** be run. You've been warned! | |
| *** | |
| **************************************************************************** | |
| ****************************************************************************/ | |
| #ifndef _UAPI_LINUX_CHIO_H | |
| #define _UAPI_LINUX_CHIO_H | |
| #define CHET_MT 0 | |
| #define CHET_ST 1 | |
| #define CHET_IE 2 | |
| #define CHET_DT 3 | |
| #define CHET_V1 4 | |
| #define CHET_V2 5 | |
| #define CHET_V3 6 | |
| #define CHET_V4 7 | |
| struct changer_params { | |
| int cp_curpicker; | |
| int cp_npickers; | |
| int cp_nslots; | |
| int cp_nportals; | |
| int cp_ndrives; | |
| }; | |
| struct changer_vendor_params { | |
| int cvp_n1; | |
| char cvp_label1[16]; | |
| int cvp_n2; | |
| char cvp_label2[16]; | |
| int cvp_n3; | |
| char cvp_label3[16]; | |
| int cvp_n4; | |
| char cvp_label4[16]; | |
| int reserved[8]; | |
| }; | |
| struct changer_move { | |
| int cm_fromtype; | |
| int cm_fromunit; | |
| int cm_totype; | |
| int cm_tounit; | |
| int cm_flags; | |
| }; | |
| #define CM_INVERT 1 | |
| struct changer_exchange { | |
| int ce_srctype; | |
| int ce_srcunit; | |
| int ce_fdsttype; | |
| int ce_fdstunit; | |
| int ce_sdsttype; | |
| int ce_sdstunit; | |
| int ce_flags; | |
| }; | |
| #define CE_INVERT1 1 | |
| #define CE_INVERT2 2 | |
| struct changer_position { | |
| int cp_type; | |
| int cp_unit; | |
| int cp_flags; | |
| }; | |
| #define CP_INVERT 1 | |
| struct changer_element_status { | |
| int ces_type; | |
| unsigned char __user * ces_data; | |
| }; | |
| #define CESTATUS_FULL 0x01 | |
| #define CESTATUS_IMPEXP 0x02 | |
| #define CESTATUS_EXCEPT 0x04 | |
| #define CESTATUS_ACCESS 0x08 | |
| #define CESTATUS_EXENAB 0x10 | |
| #define CESTATUS_INENAB 0x20 | |
| struct changer_get_element { | |
| int cge_type; | |
| int cge_unit; | |
| int cge_status; | |
| int cge_errno; | |
| int cge_srctype; | |
| int cge_srcunit; | |
| int cge_id; | |
| int cge_lun; | |
| char cge_pvoltag[36]; | |
| char cge_avoltag[36]; | |
| int cge_flags; | |
| }; | |
| #define CGE_ERRNO 0x01 | |
| #define CGE_INVERT 0x02 | |
| #define CGE_SRC 0x04 | |
| #define CGE_IDLUN 0x08 | |
| #define CGE_PVOLTAG 0x10 | |
| #define CGE_AVOLTAG 0x20 | |
| struct changer_set_voltag { | |
| int csv_type; | |
| int csv_unit; | |
| char csv_voltag[36]; | |
| int csv_flags; | |
| }; | |
| #define CSV_PVOLTAG 0x01 | |
| #define CSV_AVOLTAG 0x02 | |
| #define CSV_CLEARTAG 0x04 | |
| #define CHIOMOVE _IOW('c', 1, struct changer_move) | |
| #define CHIOEXCHANGE _IOW('c', 2, struct changer_exchange) | |
| #define CHIOPOSITION _IOW('c', 3, struct changer_position) | |
| #define CHIOGPICKER _IOR('c', 4, int) | |
| #define CHIOSPICKER _IOW('c', 5, int) | |
| #define CHIOGPARAMS _IOR('c', 6, struct changer_params) | |
| #define CHIOGSTATUS _IOW('c', 8, struct changer_element_status) | |
| #define CHIOGELEM _IOW('c', 16, struct changer_get_element) | |
| #define CHIOINITELEM _IO('c', 17) | |
| #define CHIOSVOLTAG _IOW('c', 18, struct changer_set_voltag) | |
| #define CHIOGVPARAMS _IOR('c', 19, struct changer_vendor_params) | |
| #endif |