kern/80487: QUIRK: United MP 5512 Portable MP3 Player (2-in-1 USB
DISK/MP3)
tnu at chania.di.uoa.gr
tnu at chania.di.uoa.gr
Sat Apr 30 12:42:22 PDT 2005
>Number: 80487
>Category: kern
>Synopsis: QUIRK: United MP 5512 Portable MP3 Player (2-in-1 USB DISK/MP3)
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Sat Apr 30 19:40:01 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: <tnu at chania.di.uoa.gr>
>Release: FreeBSD 5.4-STABLE i386
>Organization:
>Environment:
System: FreeBSD 5.4-STABLE FreeBSD 5.4-STABLE #0: Fri Apr 29 12:19:56 EEST 2005 r at p:/usr/obj/usr/src/sys/L i386
>Description:
Quirk for United MP 5512 Portable MP3 Player (2-in-1 USB DISK/MP3).
The device is well detected...
umass0: vendor 0x8341 product 0x0000, rev 1.10/1.00, addr 2
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Generic MUSIC DISK 0.00> Removable Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 256MB (131072 2048 byte sectors: 64H 32S/T 64C)
...but fails to function properly. It cannot be mounted (da0 is non-existent)
and any camcontrol command performed on da0 simply hangs.
After waiting for some time (or unplugging violently the device)...
umass0: BBB reset failed, STALLED
umass0: BBB bulk-in clear stall failed, STALLED
umass0: BBB bulk-out clear stall failed, STALLED
(da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
umass0: BBB reset failed, STALLED
umass0: BBB bulk-in clear stall failed, STALLED
umass0: BBB bulk-out clear stall failed, STALLED
[...]
umass0: BBB reset failed, STALLED
umass0: BBB bulk-in clear stall failed, STALLED
umass0: BBB bulk-out clear stall failed, STALLED
[...]
umass0: BBB reset failed, STALLED
umass0: BBB bulk-in clear stall failed, STALLED
umass0: at uhub0 port 1 (addr 2) disconnected
(da0:umass-sim0:0:0:0): lost device
umass0: detached
(da0:umass-sim0:0:0:0): removing device entry
Opened disk da0 -> 5
The "Synchronize cache failed" is quite a hint so adding a "DA_Q_NO_SYNC_CACHE"
in sys/cam/scsi/scsi_da.c eliminates the problem.
After adding the quirk the device can be mounted (da0 exists) and it functions
as expected.
For the record:
# camcontrol inquiry da0
pass0: <Generic MUSIC DISK 0.00> Removable Direct Access SCSI-0 device
pass0: 1.000MB/s transfers
# usbdevs -v
Controller /dev/usb0:
addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), VIA(0x0000), rev 1.00
port 1 addr 2: full speed, power 100 mA, config 1, product 0x0000(0x0000), vendor 0x8341(0x8341), rev 1.00
port 2 powered
>How-To-Repeat:
>Fix:
--- sys/cam/scsi/scsi_da.c.orig Fri Apr 29 03:10:36 2005
+++ sys/cam/scsi/scsi_da.c Sat Apr 30 21:01:32 2005
@@ -318,6 +318,13 @@
{T_DIRECT, SIP_MEDIA_REMOVABLE, "FL" , "NexIA+*", "*"},
/*quirks*/ DA_Q_NO_SYNC_CACHE
},
+ {
+ /*
+ * United MP5512 Portable MP3 Player (2-in-1 USB DISK/MP3)
+ */
+ {T_DIRECT, SIP_MEDIA_REMOVABLE, "Generic*", "MUSIC DISK", "*"},
+ /*quirks*/ DA_Q_NO_SYNC_CACHE
+ },
};
static disk_strategy_t dastrategy;
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list