forked from luck/tmp_suning_uos_patched
USB: usb-storage: merge ATAPI and QIC-157 protocol routines
This patch (as1174) merges usb-storage's QIC-157 and ATAPI protocol routines. Since the two functions are identical, there's no reason to keep them separate. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Cc: Matthew Dharm <mdharm-usb@one-eyed-alien.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
64648a9dc4
commit
3dae534531
|
@ -56,9 +56,9 @@
|
|||
* Protocol routines
|
||||
***********************************************************************/
|
||||
|
||||
void usb_stor_qic157_command(struct scsi_cmnd *srb, struct us_data *us)
|
||||
void usb_stor_pad12_command(struct scsi_cmnd *srb, struct us_data *us)
|
||||
{
|
||||
/* Pad the ATAPI command with zeros
|
||||
/* Pad the SCSI command with zeros out to 12 bytes
|
||||
*
|
||||
* NOTE: This only works because a scsi_cmnd struct field contains
|
||||
* a unsigned char cmnd[16], so we know we have storage available
|
||||
|
@ -73,26 +73,6 @@ void usb_stor_qic157_command(struct scsi_cmnd *srb, struct us_data *us)
|
|||
usb_stor_invoke_transport(srb, us);
|
||||
}
|
||||
|
||||
void usb_stor_ATAPI_command(struct scsi_cmnd *srb, struct us_data *us)
|
||||
{
|
||||
/* Pad the ATAPI command with zeros
|
||||
*
|
||||
* NOTE: This only works because a scsi_cmnd struct field contains
|
||||
* a unsigned char cmnd[16], so we know we have storage available
|
||||
*/
|
||||
|
||||
/* Pad the ATAPI command with zeros */
|
||||
for (; srb->cmd_len<12; srb->cmd_len++)
|
||||
srb->cmnd[srb->cmd_len] = 0;
|
||||
|
||||
/* set command length to 12 bytes */
|
||||
srb->cmd_len = 12;
|
||||
|
||||
/* send the command to the transport layer */
|
||||
usb_stor_invoke_transport(srb, us);
|
||||
}
|
||||
|
||||
|
||||
void usb_stor_ufi_command(struct scsi_cmnd *srb, struct us_data *us)
|
||||
{
|
||||
/* fix some commands -- this is a form of mode translation
|
||||
|
|
|
@ -40,8 +40,7 @@
|
|||
#define _PROTOCOL_H_
|
||||
|
||||
/* Protocol handling routines */
|
||||
extern void usb_stor_ATAPI_command(struct scsi_cmnd*, struct us_data*);
|
||||
extern void usb_stor_qic157_command(struct scsi_cmnd*, struct us_data*);
|
||||
extern void usb_stor_pad12_command(struct scsi_cmnd*, struct us_data*);
|
||||
extern void usb_stor_ufi_command(struct scsi_cmnd*, struct us_data*);
|
||||
extern void usb_stor_transparent_scsi_command(struct scsi_cmnd*,
|
||||
struct us_data*);
|
||||
|
|
|
@ -704,19 +704,19 @@ static int get_protocol(struct us_data *us)
|
|||
|
||||
case US_SC_8020:
|
||||
us->protocol_name = "8020i";
|
||||
us->proto_handler = usb_stor_ATAPI_command;
|
||||
us->proto_handler = usb_stor_pad12_command;
|
||||
us->max_lun = 0;
|
||||
break;
|
||||
|
||||
case US_SC_QIC:
|
||||
us->protocol_name = "QIC-157";
|
||||
us->proto_handler = usb_stor_qic157_command;
|
||||
us->proto_handler = usb_stor_pad12_command;
|
||||
us->max_lun = 0;
|
||||
break;
|
||||
|
||||
case US_SC_8070:
|
||||
us->protocol_name = "8070i";
|
||||
us->proto_handler = usb_stor_ATAPI_command;
|
||||
us->proto_handler = usb_stor_pad12_command;
|
||||
us->max_lun = 0;
|
||||
break;
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user