kern/75578: QUIRK: PNY USB flash key
Thomas Pornin
pornin at bolet.org
Tue Dec 28 07:50:33 PST 2004
>Number: 75578
>Category: kern
>Synopsis: QUIRK: PNY USB flash key
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue Dec 28 15:50:32 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Thomas Pornin
>Release: FreeBSD 5.3-STABLE i386
>Organization:
>Environment:
>Description:
I bought a cheap 128 MB USB flash key from PNY. When plugged in, it
seems to work, but annoying warnings are emitted when the key is
accessed:
umass0: Phase Error, residue = 0
(da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
This seems to be due to the cheap key not supporting some sort of SCSI
command.
Here are the insertion messages:
umass0: PNY USB DISK 20X, rev 2.00/1.00, addr 4
da0 at umass-sim0 bus 0 target 0 lun 0
da0: < USB DISK 20X PMAP> Removable Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 123MB (251904 512 byte sectors: 64H 32S/T 123C)
Note: the vendor name is empty. The product name is "USB DISK 20X" and
the revision is "PMAP". "usbdevs -v" shows this:
full speed, power 200 mA, config 1, USB DISK 20X(0x1600), PNY(0x0d7d), rev 1.00
>How-To-Repeat:
>Fix:
This patch seems to solve the problem:
--- sys/cam/scsi/scsi_da.c-orig Tue Dec 28 15:06:15 2004
+++ sys/cam/scsi/scsi_da.c Tue Dec 28 15:06:20 2004
@@ -318,6 +318,13 @@
{T_DIRECT, SIP_MEDIA_REMOVABLE, "FL" , "NexIA+*", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE
},
+ {
+ /*
+ * PNY USB flash key
+ */
+ {T_DIRECT, SIP_MEDIA_REMOVABLE, "" , "USB DISK 20X", "PMAP"},
+ /*quirks*/ DA_Q_NO_SYNC_CACHE
+ },
};
static disk_strategy_t dastrategy;
>Release-Note:
>Audit-Trail:
>Unformatted:
>System: FreeBSD titan 5.3-STABLE FreeBSD 5.3-STABLE #0: Tue Dec 28 16:15:02 CET 2004 root at titan:/usr/obj/usr/src/sys/TITAN i386
Base machine is a simple PC (Athlon XP) with USB 1.0 capabilities.
More information about the freebsd-bugs
mailing list