It's only a problem for the ScanLogic USBIDE chipset.  And the older
firmware version -- ScanLogic fixed this months ago.  New firmware is on
their web page.

Matt

On Sat, Feb 02, 2002 at 02:33:26PM +0100, Manfred Spraul wrote:
> Hi Matthew,
> 
> I had to disable the tag value check for my external usb case. Is that a
> common problem?
> 
> I've attached a patch that adds a fixup flag for wrong tag values into
> unusual_dev.h, I'm not sure if I filled all fields properly.
> 
> <<<< /proc/bus/usb/devices
> [snip]
> E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=255ms
> T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
> D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
> P:  Vendor=04ce ProdID=0002 Rev= 2.60
> S:  Manufacturer=ScanLogic USBIDE
> S:  Product=ScanLogic USBIDE
> C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA
> I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50
> Driver=usb-storage
> <<<<<
> Brand name: Serotech FHD-252
> 
> Patch against 2.4.18-pre7 attached.
> 
> --
>       Manfred
> diff -u 2.4/drivers/usb/storage/transport.c build-2.4/drivers/usb/storage/transport.c
> --- 2.4/drivers/usb/storage/transport.c       Sat Feb  2 14:22:07 2002
> +++ build-2.4/drivers/usb/storage/transport.c Sat Feb  2 14:14:21 2002
> @@ -1157,7 +1157,7 @@
>                 le32_to_cpu(bcs.Signature), bcs.Tag, 
>                 bcs.Residue, bcs.Status);
>       if (bcs.Signature != cpu_to_le32(US_BULK_CS_SIGN) || 
> -         bcs.Tag != bcb.Tag || 
> +         (!(us->flags & US_FL_IGNORE_TAG) && bcs.Tag != bcb.Tag) ||
>           bcs.Status > US_BULK_STAT_PHASE || partial != 13) {
>               US_DEBUGP("Bulk logical error\n");
>               return USB_STOR_TRANSPORT_ERROR;
> diff -u 2.4/drivers/usb/storage/unusual_devs.h 
>build-2.4/drivers/usb/storage/unusual_devs.h
> --- 2.4/drivers/usb/storage/unusual_devs.h    Sat Feb  2 14:22:07 2002
> +++ build-2.4/drivers/usb/storage/unusual_devs.h      Sat Feb  2 14:19:08 2002
> @@ -99,6 +99,15 @@
>               "SL11R-IDE",
>               US_SC_SCSI, US_PR_BULK, NULL,
>               US_FL_FIX_INQUIRY),
> +/*
> + * Reported by Manfred Spraul
> + * Tested with Firmware rev 2.50 and 2.60
> + */
> +UNUSUAL_DEV(  0x04ce, 0x0002, 0x0000, 0xffff,
> +             "ScanLogic",
> +             "USBIDE",
> +             US_SC_8070, US_PR_BULK, NULL,
> +             US_FL_IGNORE_TAG),
>  
>  /* Reported by Kriston Fincher <[EMAIL PROTECTED]>
>   * Patch submitted by Sean Millichamp <[EMAIL PROTECTED]>
> diff -u 2.4/drivers/usb/storage/usb.h build-2.4/drivers/usb/storage/usb.h
> --- 2.4/drivers/usb/storage/usb.h     Sat Aug 11 16:15:26 2001
> +++ build-2.4/drivers/usb/storage/usb.h       Sat Feb  2 14:16:31 2002
> @@ -101,6 +101,7 @@
>  #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 US_FL_IGNORE_TAG      0x00000080 /* ignore Tag value returned in CSW */
>  
>  #define USB_STOR_STRING_LEN 32
>  
> 


-- 
Matthew Dharm                              Home: [EMAIL PROTECTED] 
Maintainer, Linux USB Mass Storage Driver

M:  No, Windows doesn't have any nag screens.
C:  Then what are those blue and white screens I get every day?
                                        -- Mike and Cobb
User Friendly, 1/4/1999

Attachment: msg02494/pgp00000.pgp
Description: PGP signature

Reply via email to