/* SPDX-License-Identifier: GPL-2.0+ */ 
 | 
/* 
 | 
 * Header file for Special Initializers for certain USB Mass Storage devices 
 | 
 * 
 | 
 * Current development and maintenance by: 
 | 
 *   (c) 1999, 2000 Matthew Dharm (mdharm-usb@one-eyed-alien.net) 
 | 
 * 
 | 
 * This driver is based on the 'USB Mass Storage Class' document. This 
 | 
 * describes in detail the protocol used to communicate with such 
 | 
 * devices.  Clearly, the designers had SCSI and ATAPI commands in 
 | 
 * mind when they created this document.  The commands are all very 
 | 
 * similar to commands in the SCSI-II and ATAPI specifications. 
 | 
 * 
 | 
 * It is important to note that in a number of cases this class 
 | 
 * exhibits class-specific exemptions from the USB specification. 
 | 
 * Notably the usage of NAK, STALL and ACK differs from the norm, in 
 | 
 * that they are used to communicate wait, failed and OK on commands. 
 | 
 * 
 | 
 * Also, for certain devices, the interrupt endpoint is used to convey 
 | 
 * status of a command. 
 | 
 */ 
 | 
  
 | 
#include "usb.h" 
 | 
#include "transport.h" 
 | 
  
 | 
/* 
 | 
 * This places the Shuttle/SCM USB<->SCSI bridge devices in multi-target 
 | 
 * mode 
 | 
 */ 
 | 
int usb_stor_euscsi_init(struct us_data *us); 
 | 
  
 | 
/* 
 | 
 * This function is required to activate all four slots on the UCR-61S2B 
 | 
 * flash reader 
 | 
 */ 
 | 
int usb_stor_ucr61s2b_init(struct us_data *us); 
 | 
  
 | 
/* This places the HUAWEI E220 devices in multi-port mode */ 
 | 
int usb_stor_huawei_e220_init(struct us_data *us); 
 |