From owner-freebsd-usb@FreeBSD.ORG Sun Jan 20 16:37:33 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CD6FBFD9 for ; Sun, 20 Jan 2013 16:37:33 +0000 (UTC) (envelope-from uzimac@da3m0n8t3r.com) Received: from z.umatar.com (z.umatar.com [66.135.39.87]) by mx1.freebsd.org (Postfix) with ESMTP id 93712AC5 for ; Sun, 20 Jan 2013 16:37:33 +0000 (UTC) Received: from z.umatar.com (localhost [127.0.0.1]) by z.umatar.com (8.14.5/8.14.3) with ESMTP id r0KGbSLb019339; Sun, 20 Jan 2013 08:37:28 -0800 (PST) (envelope-from uzimac@da3m0n8t3r.com) Received: (from uzimac@localhost) by z.umatar.com (8.14.5/8.14.3/Submit) id r0KGbSBi019338; Sun, 20 Jan 2013 08:37:28 -0800 (PST) (envelope-from uzimac@da3m0n8t3r.com) X-Authentication-Warning: z.umatar.com: uzimac set sender to uzimac@da3m0n8t3r.com using -f From: "Waitman Gobble" Subject: Re: SDDR-289 slo-mo reboot To: Hans Petter Selasky Message-Id: <1358699848.19332@da3m0n8t3r.com> X-Originating-IP: 75.36.150.58 X-Mailer: Usermin 1.510 In-Reply-To: <1358698733.18413@da3m0n8t3r.com> Date: Sun, 20 Jan 2013 08:37:28 -0800 (PST) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="bound1358699848" Cc: freebsd-usb@freebsd.org X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Jan 2013 16:37:33 -0000 This is a multi-part message in MIME format. --bound1358699848 Content-Type: text/plain; charset=iso-8859-15 Content-Transfer-Encoding: 7bit Waitman Gobble wrote .. > Hans Petter Selasky wrote .. > > On Sunday 20 January 2013 09:06:51 Waitman Gobble wrote: > > > Hi, > > > > > > I have a SanDisk SDDR-289 hooked up through a pci-e interface card w/ VIA > > > VL800 chipset With it plugged it, when I reboot it takes 5-6 minutes to > > > shut down and 15 to come back up. > > > > > > Jan 18 20:58:20 kamira kernel: ugen0.4 (: at usbus0 > > > Jan 18 20:58:20 kamira kernel: umass2: on > > > usbus0 Jan 18 20:58:20 kamira kernel: umass2: SCSI over Bulk-Only; quirks > > > = 0x4000 Jan 18 20:58:20 kamira kernel: umass2:7:2:-1: Attached to scbus7 > > > Jan 18 20:58:20 kamira kernel: da2 at umass-sim2 bus 2 scbus7 target 0 lun > > > 0 Jan 18 20:58:20 kamira kernel: da2: > > > Removable Direct Access SCSI-0 > > > > > > I don't see this model listed in sys/dev/usb/usbdevs, or > > > sys/dev/usb/quirk/usb_quirk.c ..not sure if the 'quirks = 0x4000' refers > > > to something. (?) I have a hunch the problem is related to missing quirks, > > > but I'm not sure. > > > > > > # uname -a > > > FreeBSD kamira.waitman.net 9.1-RELEASE FreeBSD 9.1-RELEASE #3 r245537M: Sat > > > Jan 19 13:41:28 PST 2013 > > > root@kamira.waitman.net:/usr/obj/usr/src/sys/BURPLEX amd64 > > > > There is currently some automagic detection of quirks. You can try to add your > > device to the quirklist in sys/dev/usb/quirk/usb_quirk.c > > > > --HPS > > Hi, > > Thanks. I did try just to see what happens, but it seems i need to have the device > listed in usbdev and I wasn't sure how to list it. > > for example, an older product with the same brand name, but conceivably a different > architecture: > > in usb_quirk.c > > USB_QUIRK(ONSPEC2, IMAGEMATE_SDDR55, 0x0000, 0xffff, > UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), > > and usbdevs > product ONSPEC2 IMAGEMATE_SDDR55 0xa103 ImageMate SDDR55 > > i'm not sure where i get this number:0xa103 > and if that's all that is needed? > > > # usbconfig -u 0 -a 4 dump_curr_config_desc > ugen0.4: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) > pwr=ON > > > Configuration index 0 > > bLength = 0x0009 > bDescriptorType = 0x0002 > wTotalLength = 0x002c > bNumInterfaces = 0x0001 > bConfigurationValue = 0x0001 > iConfiguration = 0x0004 > bmAttributes = 0x0080 > bMaxPower = 0x0064 > > Interface 0 > bLength = 0x0009 > bDescriptorType = 0x0004 > bInterfaceNumber = 0x0000 > bAlternateSetting = 0x0000 > bNumEndpoints = 0x0002 > bInterfaceClass = 0x0008 > bInterfaceSubClass = 0x0006 > bInterfaceProtocol = 0x0050 > iInterface = 0x0005 > > Endpoint 0 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0001 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0400 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Additional Descriptor > > bLength = 0x06 > bDescriptorType = 0x30 > bDescriptorSubType = 0x03 > RAW dump: > 0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00 > > > Endpoint 1 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0082 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0400 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Additional Descriptor > > bLength = 0x06 > bDescriptorType = 0x30 > bDescriptorSubType = 0x03 > RAW dump: > 0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00 > > > > # usbconfig -u 0 -a 4 dump_device_desc > ugen0.4: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) > pwr=ON > > bLength = 0x0012 > bDescriptorType = 0x0001 > bcdUSB = 0x0300 > bDeviceClass = 0x0000 > bDeviceSubClass = 0x0000 > bDeviceProtocol = 0x0000 > bMaxPacketSize0 = 0x0009 > idVendor = 0x0781 > idProduct = 0xb6ba > bcdDevice = 0x0124 > iManufacturer = 0x0001 > iProduct = 0x0002 > iSerialNumber = 0x0003 <11150005027> > bNumConfigurations = 0x0001 > > > Thank you, > > > -- > Waitman Gobble > San Jose California USA OOPs, I think I answered my own question.. I put this in usbdevs, based on the output of usbconfig above. product SANDISK IMAGEMATE_SDDR289 0xb6ba ImageMate SDDR-289 then in usb_quirk.c USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY | UQ_MSC_NO_GETMAXLUN), Not sure if it's correct but I think maybe a starting point to experiment. Thanks, -- Waitman Gobble San Jose California USA --bound1358699848--