Date: Sun, 11 Apr 2004 09:25:44 -0400 (EDT) From: "Peter D. Quilty" <pdquilty@adelphia.net> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/65436: [patch] to add support for PNY Attache 256MB USB 2.0 Flash Drive Message-ID: <200404111325.i3BDPiRp010604@pdq-laptop.nextel.com> Resent-Message-ID: <200404111340.i3BDe8NR062247@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 65436 >Category: kern >Synopsis: [patch] to add support for PNY Attache 256MB USB 2.0 Flash Drive >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: Sun Apr 11 06:40:08 PDT 2004 >Closed-Date: >Last-Modified: >Originator: Peter D. Quilty <pdquilty@adelphia.net> >Release: FreeBSD 4.10-BETA i386 >Organization: >Environment: System: FreeBSD pdq-laptop 4.10-BETA FreeBSD 4.10-BETA #7: Sat Apr 10 10:16:29 EDT 2004 root@pdq-laptop:/usr/obj/usr/src/sys/PDQ.8200 i386 >Description: I recently purchased a 256MB PNY Attache USB 2.0 Flash Drive and it was not recognized by 4.9-RELEASE-p4. The problem persisted after upgrading to 4-STABLE with the following error messages: /kernel: umass0: PNY USB DISK 12X, rev 2.00/0.02, addr 2 /kernel: (da0:umass-sim0:0:0:0): got CAM status 0x4 /kernel: (da0:umass-sim0:0:0:0): fatal error, failed to attach to device /kernel: (da0:umass-sim0:0:0:0): lost device /kernel: (da0:umass-sim0:0:0:0): removing device entry After running "/usr/sbin/usbd -d" I found the following information. usbd: device-attach event at 1081687215.371542000, USB DISK 12X, PNY: vndr=0x0d7d prdct=0x1400 rlse=0x0002 clss=0x0000 subclss=0x0000 prtcl=0x0000 device names: umass0 /usr/src/sys/dev/usb/usbdevs only lists product 0x1300 from PNY. The patches below seemed to fix everything and I am able to use the drive properly. The kernel now recognizes and attaches it correctly. umass0: PNY USB DISK 12X, rev 2.00/0.02, addr 2 da0 at umass-sim0 bus 0 target 0 lun 0 da0: < USB DISK 12X 1.09> Removable Direct Access SCSI-0 device da0: 650KB/s transfers da0: 238MB (487424 512 byte sectors: 64H 32S/T 238C) The patch in scsi_da.c seems to fix this error message: /kernel: umass0: Phase Error, residue = 0 /kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0 >How-To-Repeat: The 4-STABLE code as of Apr 10, 2004 still lacks support for this device. Simply plug in the drive with a kernel with USB, SCSI and umass support and the problem should be readily apparent. >Fix: --- patch-scsi_da.c begins here --- --- sys/cam/scsi/scsi_da.c.orig Wed Apr 7 16:31:57 2004 +++ sys/cam/scsi/scsi_da.c Sun Apr 11 08:54:10 2004 @@ -390,6 +390,13 @@ {T_DIRECT, SIP_MEDIA_REMOVABLE, "CREATIVE", "NOMAD_MUVO", "*"}, /*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT }, + { + /* + * PNY Attache 256MB USB 2.0 Flash Drive + */ + {T_DIRECT, SIP_MEDIA_REMOVABLE, "*", "*USB DISK*", "*"}, + /*quirks*/ DA_Q_NO_SYNC_CACHE + }, }; static d_open_t daopen; --- patch-scsi_da.c ends here --- --- patch-umass.c begins here --- --- sys/dev/usb/umass.c.orig Wed Apr 7 16:32:08 2004 +++ sys/dev/usb/umass.c Sun Apr 11 08:53:22 2004 @@ -726,7 +726,8 @@ sc->quirks |= NO_TEST_UNIT_READY; } if (UGETW(dd->idVendor) == USB_VENDOR_PNY && - UGETW(dd->idProduct) == USB_PRODUCT_PNY_ATTACHE) { + (UGETW(dd->idProduct) == USB_PRODUCT_PNY_ATTACHE || + UGETW(dd->idProduct) == USB_PRODUCT_PNY_A256MB)) { sc->proto = UMASS_PROTO_SCSI | UMASS_PROTO_BBB; sc->quirks |= IGNORE_RESIDUE; } --- patch-umass.c ends here --- --- patch-usbdevs begins here --- --- sys/dev/usb/usbdevs.orig Wed Apr 7 16:32:20 2004 +++ sys/dev/usb/usbdevs Sun Apr 11 08:54:35 2004 @@ -1073,6 +1073,7 @@ /* PNY products */ product PNY ATTACHE 0x1300 USB 2.0 Flash Drive +product PNY A256MB 0x1400 Attache 256MB USB 2.0 Flash Drive /* Primax products */ product PRIMAX G2X300 0x0300 G2-200 scanner --- patch-usbdevs ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200404111325.i3BDPiRp010604>