122 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			122 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C
		
	
	
	
/****************************************************************************
 | 
						|
 ****************************************************************************
 | 
						|
 ***
 | 
						|
 ***   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
 |