This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / drivers / usb / storage / isd200.c
index d6ac358..8aa136b 100644 (file)
@@ -555,7 +555,7 @@ static void isd200_invoke_transport( struct us_data *us,
        /* if the command gets aborted by the higher layers, we need to
         * short-circuit all other processing
         */
-       if (test_bit(US_FLIDX_TIMED_OUT, &us->flags)) {
+       if (us->sm_state == US_STATE_ABORTING) {
                US_DEBUGP("-- command was aborted\n");
                goto Handle_Abort;
        }
@@ -602,7 +602,7 @@ static void isd200_invoke_transport( struct us_data *us,
 
        if (need_auto_sense) {
                result = isd200_read_regs(us);
-               if (test_bit(US_FLIDX_TIMED_OUT, &us->flags)) {
+               if (us->sm_state == US_STATE_ABORTING) {
                        US_DEBUGP("-- auto-sense aborted\n");
                        goto Handle_Abort;
                }
@@ -1053,6 +1053,12 @@ static int isd200_get_inquiry_data( struct us_data *us )
                                /* Standard IDE interface only supports disks */
                                info->InquiryData.DeviceType = DIRECT_ACCESS_DEVICE;
 
+                               /* Fix-up the return data from an INQUIRY command to show 
+                                * ANSI SCSI rev 2 so we don't confuse the SCSI layers above us
+                                * in Linux.
+                                */
+                               info->InquiryData.Versions = 0x2;
+
                                /* The length must be at least 36 (5 + 31) */
                                info->InquiryData.AdditionalLength = 0x1F;