Merge branch 'release-2.6.27' of git://git.kernel.org/pub/scm/linux/kernel/git/ak...
[pandora-kernel.git] / drivers / usb / storage / isd200.c
index 971d13d..383abf2 100644 (file)
@@ -1,6 +1,4 @@
 /* Transport & Protocol Driver for In-System Design, Inc. ISD200 ASIC
- *
- * $Id: isd200.c,v 1.16 2002/04/22 03:39:43 mdharm Exp $
  *
  * Current development and maintenance:
  *   (C) 2001-2002 Björn Stenberg (bjorn@haxx.se)
@@ -292,6 +290,7 @@ struct isd200_info {
 
        /* maximum number of LUNs supported */
        unsigned char MaxLUNs;
+       unsigned char cmnd[BLK_MAX_CDB];
        struct scsi_cmnd srb;
        struct scatterlist sg;
 };
@@ -450,6 +449,7 @@ static int isd200_action( struct us_data *us, int action,
 
        memset(&ata, 0, sizeof(ata));
        memset(&srb_dev, 0, sizeof(srb_dev));
+       srb->cmnd = info->cmnd;
        srb->device = &srb_dev;
        ++srb->serial_number;
 
@@ -584,7 +584,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 (test_bit(US_FLIDX_TIMED_OUT, &us->dflags)) {
                US_DEBUGP("-- command was aborted\n");
                goto Handle_Abort;
        }
@@ -631,7 +631,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 (test_bit(US_FLIDX_TIMED_OUT, &us->dflags)) {
                        US_DEBUGP("-- auto-sense aborted\n");
                        goto Handle_Abort;
                }
@@ -661,7 +661,7 @@ static void isd200_invoke_transport( struct us_data *us,
        srb->result = DID_ABORT << 16;
 
        /* permit the reset transfer to take place */
-       clear_bit(US_FLIDX_ABORTING, &us->flags);
+       clear_bit(US_FLIDX_ABORTING, &us->dflags);
        /* Need reset here */
 }