On Tue, Mar 06, 2001 at 10:03:51PM -0800, Matthew Dharm wrote:
> You didn't send me the patch... :)
> 
> Don't worry, newbie... it's a common mistake, even for the pros.

Time to get a brown paper bag...


diff -ur linux-2.4.1/drivers/usb/storage/unusual_devs.h 
linux-2.4.1-taz/drivers/usb/storage/unusual_devs.h
--- linux-2.4.1/drivers/usb/storage/unusual_devs.h      Sun Feb  4 22:42:42 2001
+++ linux-2.4.1-taz/drivers/usb/storage/unusual_devs.h  Sun Mar  4 16:41:25 2001
@@ -54,6 +54,11 @@
                US_SC_8070, US_PR_SCM_ATAPI, init_8200e, 0), 
 #endif
 
+UNUSUAL_DEV(  0x04cb, 0x0100, 0x0000, 0x2210,
+               "Fujifilm",
+               "FinePix 1400Zoom",
+               US_SC_8070, US_PR_CBI, NULL, US_FL_FIX_INQUIRY),
+
 UNUSUAL_DEV(  0x04e6, 0x0001, 0x0200, 0x0200, 
                "Matshita",
                "LS-120",
diff -ur linux-2.4.1/drivers/usb/storage/usb.c 
linux-2.4.1-taz/drivers/usb/storage/usb.c
--- linux-2.4.1/drivers/usb/storage/usb.c       Sun Feb  4 22:42:42 2001
+++ linux-2.4.1-taz/drivers/usb/storage/usb.c   Sun Mar  4 16:43:55 2001
@@ -378,6 +378,22 @@
                                break;
                        }
 
+                       if ((us->srb->cmnd[0] == INQUIRY) &&
+                           (us->flags & US_FL_FIX_INQUIRY)) {
+                               unsigned char data_ptr[36] = {
+                                   0x00, 0x80, 0x02, 0x02, 0x1F, 0x00, 0x00, 0x00};
+
+                               US_DEBUGP("Faking INQUIRY command\n");
+                               fill_inquiry_response(us, data_ptr, 36);
+                               us->srb->result = GOOD << 1;
+
+                               set_current_state(TASK_INTERRUPTIBLE);
+                               us->srb->scsi_done(us->srb);
+                               us->srb = NULL;
+                               break;
+                       }
+                               
+
                        /* lock the device pointers */
                        down(&(us->dev_semaphore));
 
diff -ur linux-2.4.1/drivers/usb/storage/usb.h 
linux-2.4.1-taz/drivers/usb/storage/usb.h
--- linux-2.4.1/drivers/usb/storage/usb.h       Sun Feb  4 22:42:42 2001
+++ linux-2.4.1-taz/drivers/usb/storage/usb.h   Sun Mar  4 16:42:32 2001
@@ -99,6 +99,7 @@
 #define US_FL_START_STOP      0x00000004 /* ignore START_STOP commands     */
 #define US_FL_IGNORE_SER      0x00000010 /* Ignore the serial number given  */
 #define US_FL_SCM_MULT_TARG   0x00000020 /* supports multiple targets */
+#define US_FL_FIX_INQUIRY     0x00000040 /* INQUIRY response needs fixing */
 
 #define USB_STOR_STRING_LEN 32
 

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to