diff options
Diffstat (limited to 'include/linux/usb/uas.h')
| -rw-r--r-- | include/linux/usb/uas.h | 40 | 
1 files changed, 40 insertions, 0 deletions
diff --git a/include/linux/usb/uas.h b/include/linux/usb/uas.h index 9a988e41369..5499ab5c94b 100644 --- a/include/linux/usb/uas.h +++ b/include/linux/usb/uas.h @@ -20,6 +20,28 @@ enum {  	IU_ID_WRITE_READY	= 0x07,  }; +enum { +	TMF_ABORT_TASK          = 0x01, +	TMF_ABORT_TASK_SET      = 0x02, +	TMF_CLEAR_TASK_SET      = 0x04, +	TMF_LOGICAL_UNIT_RESET  = 0x08, +	TMF_I_T_NEXUS_RESET     = 0x10, +	TMF_CLEAR_ACA           = 0x40, +	TMF_QUERY_TASK          = 0x80, +	TMF_QUERY_TASK_SET      = 0x81, +	TMF_QUERY_ASYNC_EVENT   = 0x82, +}; + +enum { +	RC_TMF_COMPLETE         = 0x00, +	RC_INVALID_INFO_UNIT    = 0x02, +	RC_TMF_NOT_SUPPORTED    = 0x04, +	RC_TMF_FAILED           = 0x05, +	RC_TMF_SUCCEEDED        = 0x08, +	RC_INCORRECT_LUN        = 0x09, +	RC_OVERLAPPED_TAG       = 0x0a, +}; +  struct command_iu {  	__u8 iu_id;  	__u8 rsvd1; @@ -32,6 +54,16 @@ struct command_iu {  	__u8 cdb[16];	/* XXX: Overflow-checking tools may misunderstand */  }; +struct task_mgmt_iu { +	__u8 iu_id; +	__u8 rsvd1; +	__be16 tag; +	__u8 function; +	__u8 rsvd2; +	__be16 task_tag; +	struct scsi_lun lun; +}; +  /*   * Also used for the Read Ready and Write Ready IUs since they have the   * same first four bytes @@ -47,6 +79,14 @@ struct sense_iu {  	__u8 sense[SCSI_SENSE_BUFFERSIZE];  }; +struct response_ui { +	__u8 iu_id; +	__u8 rsvd1; +	__be16 tag; +	__be16 add_response_info; +	__u8 response_code; +}; +  struct usb_pipe_usage_descriptor {  	__u8  bLength;  	__u8  bDescriptorType;  |