Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Apr 2002 12:38:34 +0100 (IST)
From:      James Raftery <james@now.ie>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   kern/37378: [PATCH] No 6-byte-read on Wincan USB pen flash drive, needs quirk
Message-ID:  <200204231138.g3NBcYp00699@bender.kerna.ie>

next in thread | raw e-mail | index | archive | help

>Number:         37378
>Category:       kern
>Synopsis:       [PATCH] No 6-byte-read on Wincan USB pen flash drive, needs quirk
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Apr 23 04:40:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     James Raftery
>Release:        FreeBSD 4.5-RELEASE-p4 i386
>Organization:
>Environment:
System: FreeBSD bender.kerna.ie 4.5-RELEASE-p4 FreeBSD 4.5-RELEASE-p4 #5: Tue Apr 23 11:30:53 IST 2002 james@bender.kerna.ie:/usr/obj/usr/src/sys/BENDER i386

Dell Optiplex GX110 with the following USB whatnots:

uhci0: <Intel 82801AA (ICH) USB controller> port 0xff80-0xff9f irq 11 at device 31.2 on pci0
usb0: <Intel 82801AA (ICH) USB controller> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered

and a Wincan (branded as ``Copera'') 64MB USB pen flash drive. Detected
as:

umass0: Wincan USB HDD, rev 1.00/1.00, addr 2
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Wincan HARD DRIVE DISK 1.05> Removable Direct Access SCSI-0 device 
da0: 650KB/s transfers
da0: 62MB (128000 512 byte sectors: 64H 32S/T 62C)

Using the usb and umass kernel modules from RELENG_4_5.

>Description:

The USB drive is detected, as above, but any attempt to access da0
fails with:

/kernel: (da0:umass-sim0:0:0:0): READ(06). CDB: 8 0 0 0 1 0 
/kernel: (da0:umass-sim0:0:0:0): ILLEGAL REQUEST asc:20,0
/kernel: (da0:umass-sim0:0:0:0): Invalid command operation code
/kernel: da0: reading primary partition table: error reading fsbn 0

>How-To-Repeat:

Connect pen drive and try ``disklabel /dev/da0''.

>Fix:

A patch to /usr/src/sys/cam/scsi/scsi_da.c to add a quirk for this
device is below. It works for me on RELENG_4_5. The patch is against
scsi_da.c with RCS Id:

$FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.42.2.20 2002/01/14 09:25:43 sobomax Exp $


--- scsi_da.c.patch begins here ---
--- scsi_da.c.orig	Thu Apr 18 17:18:04 2002
+++ scsi_da.c	Tue Apr 23 11:23:58 2002
@@ -262,6 +262,13 @@
 		{T_DIRECT, SIP_MEDIA_FIXED, "MAXTOR*", "K040H2*", "*"},
 		/*quirks*/ DA_Q_NO_6_BYTE
 	},
+        {
+		/*
+		 * Wincan USB Pen Drive
+		 */
+		{T_DIRECT, SIP_MEDIA_REMOVABLE, "Wincan", "HARD DRIVE*", "*"},
+		/*quirks*/ DA_Q_NO_6_BYTE
+	},
 	{
 		{T_OPTICAL, SIP_MEDIA_REMOVABLE, "FUJITSU", "MCF3064AP", "*"},
 		/*quirks*/ DA_Q_NO_6_BYTE
--- scsi_da.c.patch ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200204231138.g3NBcYp00699>