From owner-freebsd-usb@FreeBSD.ORG Sat Sep 5 07:05:17 2009 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D4D19106566C for ; Sat, 5 Sep 2009 07:05:17 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe10.swipnet.se [212.247.155.33]) by mx1.freebsd.org (Postfix) with ESMTP id 2B33A8FC19 for ; Sat, 5 Sep 2009 07:05:16 +0000 (UTC) X-Cloudmark-Score: 0.000000 [] X-Cloudmark-Analysis: v=1.0 c=1 a=b2CVEURyvMYA:10 a=hlIU1J3LQChSjWV/CGRL5g==:17 a=5nkilLVQi0QFbvludV4A:9 a=WwrwQeBE0HWG0Jy2qJ9jvRMWdgkA:4 a=udNrn5yZyWVxpizw:21 a=-rt2bF4pUrKnoykp:21 Received: from [193.217.167.6] (account mc467741@c2i.net HELO laptop.adsl.tele2.no) by mailfe10.swip.net (CommuniGate Pro SMTP 5.2.13) with ESMTPA id 1133533533; Sat, 05 Sep 2009 09:05:15 +0200 From: Hans Petter Selasky To: freebsd-usb@freebsd.org Date: Sat, 5 Sep 2009 09:05:38 +0200 User-Agent: KMail/1.11.4 (FreeBSD/9.0-CURRENT; KDE/4.2.4; i386; ; ) References: <200909041918.n84JI3S7040121@lava.sentex.ca> In-Reply-To: <200909041918.n84JI3S7040121@lava.sentex.ca> X-Face: (%:6u[ldzJ`0qjD7sCkfdMmD*RxpOwEEQ+KWt[{J#x6ow~JO:,zwp.(t; @Aq :4:&nFCgDb8[3oIeTb^'",;u{5{}C9>"PuY\)!=#\u9SSM-nz8+SR~B\!qBv MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200909050905.39112.hselasky@c2i.net> Cc: Subject: Re: USB_ERR_IOERROR on cold boot, not warm boot X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 05 Sep 2009 07:05:17 -0000 On Friday 04 September 2009 21:21:41 Mike Tancsa wrote: > Not sure if this is a faulty device or just a quirk as to how it > works. But on cold boot (after a power cycle) it does not work. But > if I do a soft reboot, it attaches no problem > > Here is the diff on the boot verbose on the the cold boot vs warm boot > > # diff -u bad.txt good.txt | egrep "^\+|^\-" > -usb_alloc_device:1586: set address 2 failed (USB_ERR_IOERROR, ignored) > -usb_alloc_device:1624: getting device descriptor at addr 2 failed, > USB_ERR_IOERROR! > -usbd_req_re_enumerate:1539: addr=2, set address failed! > (USB_ERR_IOERROR, ignored) > -usbd_req_re_enumerate:1553: getting device descriptor at addr 2 > failed, USB_ERR_IOERROR! > -usbd_req_re_enumerate:1539: addr=2, set address failed! > (USB_ERR_IOERROR, ignored) > -usbd_req_re_enumerate:1553: getting device descriptor at addr 2 > failed, USB_ERR_IOERROR! > -ugen0.2: <(null)> at usbus0 (disconnected) > -uhub_reattach_port:435: could not allocate new device! > -ct_to_ts([2000-01-01 00:01:51]) = 946684911.000000000 > -ct_to_ts([2000-01-01 00:01:51]) = 946684911.000000000 > +ugen0.2: at usbus0 > +u3g0: on usbus0 > +u3g0: Found 3 ports. > +ct_to_ts([2000-01-01 00:06:04]) = 946685164.000000000 > +ct_to_ts([2000-01-01 00:06:04]) = 946685164.000000000 > > > Is there something I can do to deal with this specific device > differently in the driver ? Its 8.0-BETA3 FreeBSD 8.0-BETA3 #2: Wed > Sep 2 using the u3g driver. > > alix# usbconfig dump_device_desc > ugen0.1: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) > pwr=ON > > bLength = 0x0012 > bDescriptorType = 0x0001 > bcdUSB = 0x0100 > bDeviceClass = 0x0009 > bDeviceSubClass = 0x0000 > bDeviceProtocol = 0x0000 > bMaxPacketSize0 = 0x0040 > idVendor = 0x0000 > idProduct = 0x0000 > bcdDevice = 0x0100 > iManufacturer = 0x0001 > iProduct = 0x0002 > iSerialNumber = 0x0000 > bNumConfigurations = 0x0001 > > ugen1.1: at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) > pwr=ON > > bLength = 0x0012 > bDescriptorType = 0x0001 > bcdUSB = 0x0200 > bDeviceClass = 0x0009 > bDeviceSubClass = 0x0000 > bDeviceProtocol = 0x0001 > bMaxPacketSize0 = 0x0040 > idVendor = 0x0000 > idProduct = 0x0000 > bcdDevice = 0x0100 > iManufacturer = 0x0001 > iProduct = 0x0002 > iSerialNumber = 0x0000 > bNumConfigurations = 0x0001 > > ugen0.2: at usbus0, cfg=0 > md=HOST spd=FULL (12Mbps) pwr=ON > > bLength = 0x0012 > bDescriptorType = 0x0001 > bcdUSB = 0x0110 > bDeviceClass = 0x0000 > bDeviceSubClass = 0x0000 > bDeviceProtocol = 0x0000 > bMaxPacketSize0 = 0x0040 > idVendor = 0x03f0 > idProduct = 0x1e1d > bcdDevice = 0x0002 > iManufacturer = 0x0001 > iProduct = 0x0002 > iSerialNumber = 0x0000 > bNumConfigurations = 0x0001 > > > ugen0.2: at usbus0, cfg=0 > md=HOST spd=FULL (12Mbps) pwr=ON > > > Configuration index 0 > > bLength = 0x0009 > bDescriptorType = 0x0002 > wTotalLength = 0x0043 > bNumInterfaces = 0x0001 > bConfigurationValue = 0x0001 > iConfiguration = 0x0000 > bmAttributes = 0x00e0 > bMaxPower = 0x0000 > > Interface 0 > bLength = 0x0009 > bDescriptorType = 0x0004 > bInterfaceNumber = 0x0000 > bAlternateSetting = 0x0000 > bNumEndpoints = 0x0007 > bInterfaceClass = 0x00ff > bInterfaceSubClass = 0x00ff > bInterfaceProtocol = 0x00ff > iInterface = 0x0003 > > Endpoint 0 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0081 > bmAttributes = 0x0003 > wMaxPacketSize = 0x0010 > bInterval = 0x0080 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 1 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0082 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0040 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 2 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0002 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0040 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 3 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0084 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0040 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 4 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0004 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0040 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 5 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0085 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0040 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 6 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0005 > bmAttributes = 0x0002 > wMaxPacketSize = 0x0040 > bInterval = 0x0000 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > > > alix# > > > ati3 > Manufacturer: Sierra Wireless, Inc. > Model: MC8775 > Revision: H1_1_9_3MCAP C:/WS/FW/H1_1_9_3MCAP/MSM6280/SRC 2007/12/12 > 11:49:21 IMEI: xxxx > IMEI SV: 10 > FSN: xxxx > 3GPP Release 5 > +GCAP: +CGSM,+DS,+ES > Does this device have a button to enable it? Does it help pressing that button? One idea is to not power down the port which obviously gives the device power on failures. --HPS