kern/70835: QUIRK: [patch] scsi_da does not recognize SANDISK Cruizer Micro

Raymundo M. Vega rmvega at san.rr.com
Sun Aug 22 16:00:23 PDT 2004


>Number:         70835
>Category:       kern
>Synopsis:       QUIRK: [patch] scsi_da does not recognize SANDISK Cruizer Micro
>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 Aug 22 23:00:22 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Raymundo M. Vega
>Release:        FreeBSD 4.10-STABLE i386
>Organization:
Software developer enthusiast :-)
>Environment:
System: FreeBSD navajo 4.10-STABLE FreeBSD 4.10-STABLE #17: Sun Aug 15 17:31:29 PDT 2004 root at navajo.tcsllc.com:/usr/src/sys/compile/NAVAJO i386

>Description:
Tried to use a SanDisk Cruzer Micro and the system panics, tried patch from
PR kern/65438 (modified because of different product ID), that made the
umass device driver to recognize the flash card, but still no disk driver
is attached.
>How-To-Repeat:
	Connect a SanDisk Cruzer Micro in the usb bus on release 4.10
>Fix:

Here are the patches i used to be able to use the flash drive. First patch
is for file /sys/dev/usb/usbdevs, second is for /sys/dev/usb/umass.c and
last one for /sys/cam/scsi/scsi_da.c, after all patches are applied and
kernel recompiled, there is a da device driver assignedevery time the
flash is connected to USB bus and mount works fine.

--- patch-usbdevs begins here ---
--- usbdevs.ORIG        Sun Aug 15 15:55:56 2004
+++ usbdevs     Sun Aug 22 15:41:13 2004
@@ -1153,7 +1153,7 @@
 product SANDISK SDDR12         0x0100  ImageMate SDDR-12
 product SANDISK SDDR09         0x0200  ImageMate SDDR-09
 product SANDISK SDDR75         0x0810  ImageMate SDDR-75
-
+product SANDISK SDCZ4_256      0x7113  Cruzer Micro 256MB
 /* Sanyo Electric products */
 product SANYO SCP4900          0x0701  Sanyo SCP-4900 USB Phone
 
--- patch-usbdevs ends here ---



--- patch-umass.c begins here ---
--- umass.c.ORIG        Sun Aug 15 15:58:02 2004
+++ umass.c     Sun Aug 22 15:41:04 2004
@@ -748,6 +748,11 @@
                sc->proto = UMASS_PROTO_SCSI | UMASS_PROTO_BBB;
                sc->quirks |= IGNORE_RESIDUE;
        }
+       if (UGETW(dd->idVendor) == USB_VENDOR_SANDISK &&
+            UGETW(dd->idProduct) == USB_PRODUCT_SANDISK_SDCZ4_256) {
+               sc->proto = UMASS_PROTO_SCSI | UMASS_PROTO_BBB;
+               sc->quirks |= IGNORE_RESIDUE;
+       }
 
        switch (id->bInterfaceSubClass) {
        case UISUBCLASS_SCSI:
--- patch-umass.c ends here ---




--- patch-scsi_da.c begins here ---
--- scsi_da.c.ORIG      Sat Aug  7 18:34:36 2004
+++ scsi_da.c   Sun Aug 22 15:42:01 2004
@@ -333,6 +333,14 @@
                {T_DIRECT, SIP_MEDIA_REMOVABLE, "SEAGRAND", "NP-900*", "*"},
                /*quirks*/ DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT
        },
+       {
+               /*
+                * SANDISK SDCZ4-256 Flash drive (SANDISK Micro)
+                * PR: kern/64563
+                */
+               {T_DIRECT, SIP_MEDIA_REMOVABLE, "SanDisk", "Cruzer Micro", "*"},
+               /*quirks*/ DA_Q_NO_6_BYTE
+       },
 };
 
--- patch-scsi_da.c ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list