From owner-freebsd-current@FreeBSD.ORG Fri Aug 7 15:12:56 2009 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3C74610656D2; Fri, 7 Aug 2009 15:12:56 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe02.swip.net [212.247.154.33]) by mx1.freebsd.org (Postfix) with ESMTP id 5C6B18FC22; Fri, 7 Aug 2009 15:12:55 +0000 (UTC) X-Cloudmark-Score: 0.000000 [] X-Cloudmark-Analysis: v=1.0 c=1 a=9CSpTaZppU4A:10 a=hlIU1J3LQChSjWV/CGRL5g==:17 a=8kQB0OdkAAAA:8 a=lTfMxhsqup4hpbwgEeIA:9 a=_V1jS3reu8677Va-AAoA:7 a=SCYxpTpDONvinyVSNxJYYeCgkyUA:4 a=9aOQ2cSd83gA:10 Received: from [193.217.167.6] (account mc467741@c2i.net HELO laptop.adsl.tele2.no) by mailfe02.swip.net (CommuniGate Pro SMTP 5.2.13) with ESMTPA id 1301780897; Fri, 07 Aug 2009 17:12:53 +0200 From: Hans Petter Selasky To: freebsd-current@freebsd.org Date: Fri, 7 Aug 2009 17:12:47 +0200 User-Agent: KMail/1.11.4 (FreeBSD/8.0-BETA2; KDE/4.2.4; i386; ; ) References: <89dbfdc30902231031j4407614vdce09e8e58cdc346@mail.gmail.com> <200908060937.48442.hselasky@c2i.net> <90a5caac0908060412r3a117597m16573c16d35cc34a@mail.gmail.com> In-Reply-To: <90a5caac0908060412r3a117597m16573c16d35cc34a@mail.gmail.com> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200908071712.50579.hselasky@c2i.net> Cc: Lucius Windschuh , current@freebsd.org Subject: Re: reattach 3g0 device: could not allocate new device X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Aug 2009 15:12:56 -0000 On Thursday 06 August 2009 13:12:49 Lucius Windschuh wrote: > Hi Hans. > > 2009/8/6 Hans Petter Selasky : > > On Thursday 06 August 2009 00:29:09 Lucius Windschuh wrote: > >> Hi. > >> I have a Vodafone-branded "OVATION MC950D (Qualcomm 3G CDMA)" UMTS pen > >> here. > >> > >> I found this thread from some months ago: > >> > >> 2009/2/24 Hans Petter Selasky : > >> > On Tuesday 24 February 2009, Kim Culhan wrote: > >> >> On Tue, Feb 24, 2009 at 3:05 AM, Hans Petter Selasky > >> >> > >> > > >> > wrote: > >> >> > On Monday 23 February 2009, Kim Culhan wrote: > >> >> >> On Mon, Feb 23, 2009 at 3:56 PM, Hans Petter Selasky > >> >> >> > >> >> > > >> >> > wrote: > >> >> >> > On Monday 23 February 2009, Kim Culhan wrote: > >> >> >> >> Running 8.0-CURRENT as of 2-22-09 > >> >> >> >> > >> >> >> >> The 3g0 device is a Novatel U727 EVDO wireless radio. > >> >> >> >> > >> >> >> >> If the machine boots with the device attached, dmesg reads: > >> >> >> >> > >> >> >> >> u3g0: on usbus2 > >> >> >> >> > >> >> >> >> Remove the device and this is logged: > >> >> >> >> > >> >> >> >> u3g0: at ushub2, port 2, addr 2 (disconnected) > >> >> >> >> > >> >> >> >> Reattach the device and there is this message: > >> >> >> >> > >> >> >> >> uhub_reattach_port:414: could not allocate new device! > >> > >> Was there any solution for this? > >> > >> I may provide further debugging information if somebody tells me how > >> to obtail useful details. > >> > >> A sniplet with hw.usb.debug=3: > >> usbd_req_set_config:1456: setting config 1 > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_do_request_callback:95: st=0 > >> usbd_transfer_submit:1397: xfer=0xc72210b0, endpoint=0xc5dd5078, > >> nframes=1, dir= read > >> usb_dump_endpoint: endpoint=0xc5dd5078 edesc=0xc5dd532c isoc_next=0 > >> toggle_next= 0 bEndpointAddress=0x00 > >> usb_dump_queue: endpoint=0xc5dd5078 xfer: > >> usbd_pipe_enter:1584: enter > >> usbd_pipe_start:2416: start > >> usbd_transfer_done:2185: err=USB_ERR_NORMAL_COMPLETION > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_callback_wrapper_sub:2550: xfer=0xc72210b0 endpoint=0xc5dd5078 > >> sts=0 alen=8 , slen=8, afrm=1, nfrm=1 > >> usbd_do_request_callback:95: st=1 > >> usb_cdev_create:1854: Creating device nodes > >> usbd_set_config_index:584: error=USB_ERR_NORMAL_COMPLETION > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_transfer_submit:1397: xfer=0xc72230b0, endpoint=0xc71f9024, > >> nframes=1, dir= write > >> usb_dump_endpoint: endpoint=0xc71f9024 edesc=0xc624e4d9 isoc_next=0 > >> toggle_next= 0 bEndpointAddress=0x09 > >> usb_dump_queue: endpoint=0xc71f9024 xfer: > >> usbd_transfer_submit:1416: open > >> usbd_pipe_enter:1584: enter > >> usbd_pipe_start:2416: start > >> usbd_transfer_done:2185: err=USB_ERR_NORMAL_COMPLETION > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_callback_wrapper_sub:2550: xfer=0xc72230b0 endpoint=0xc71f9024 > >> sts=0 alen=3 1, slen=31, afrm=1, nfrm=1 > >> usbd_callback_wrapper:2030: case 1-4 > >> bbb_data_read_callback:320: max_bulk=64, data_rem=36 > >> usbd_transfer_submit:1397: xfer=0xc7223188, endpoint=0xc71f9000, > >> nframes=1, dir= read > >> usb_dump_endpoint: endpoint=0xc71f9000 edesc=0xc624e4d2 isoc_next=0 > >> toggle_next= 0 bEndpointAddress=0x88 > >> usb_dump_queue: endpoint=0xc71f9000 xfer: > >> usbd_transfer_submit:1416: open > >> usbd_pipe_enter:1584: enter > >> usbd_pipe_start:2416: start > >> usbd_transfer_done:2185: err=USB_ERR_NORMAL_COMPLETION > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_callback_wrapper_sub:2550: xfer=0xc7223188 endpoint=0xc71f9000 > >> sts=0 alen=3 6, slen=36, afrm=1, nfrm=1 > >> bbb_data_read_callback:320: max_bulk=64, data_rem=0 > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_transfer_submit:1397: xfer=0xc72234f8, endpoint=0xc71f9000, > >> nframes=1, dir= read > >> usb_dump_endpoint: endpoint=0xc71f9000 edesc=0xc624e4d2 isoc_next=0 > >> toggle_next= 1 bEndpointAddress=0x88 > >> usb_dump_queue: endpoint=0xc71f9000 xfer: > >> usbd_transfer_submit:1416: open > >> usbd_pipe_enter:1584: enter > >> usbd_pipe_start:2416: start > >> usbd_transfer_done:2185: err=USB_ERR_NORMAL_COMPLETION > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_callback_wrapper_sub:2550: xfer=0xc72234f8 endpoint=0xc71f9000 > >> sts=0 alen=1 3, slen=13, afrm=1, nfrm=1 > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_transfer_submit:1397: xfer=0xc72230b0, endpoint=0xc71f9024, > >> nframes=1, dir= write > >> usb_dump_endpoint: endpoint=0xc71f9024 edesc=0xc624e4d9 isoc_next=0 > >> toggle_next= 1 bEndpointAddress=0x09 > >> usb_dump_queue: endpoint=0xc71f9024 xfer: > >> usbd_pipe_enter:1584: enter > >> usbd_pipe_start:2416: start > >> usbd_transfer_done:2185: err=USB_ERR_NORMAL_COMPLETION > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_callback_wrapper_sub:2550: xfer=0xc72230b0 endpoint=0xc71f9024 > >> sts=0 alen=3 1, slen=31, afrm=1, nfrm=1 > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_transfer_submit:1397: xfer=0xc72234f8, endpoint=0xc71f9000, > >> nframes=1, dir= read > >> usb_dump_endpoint: endpoint=0xc71f9000 edesc=0xc624e4d2 isoc_next=0 > >> toggle_next= 0 bEndpointAddress=0x88 > >> usb_dump_queue: endpoint=0xc71f9000 xfer: > >> usbd_pipe_enter:1584: enter > >> usbd_pipe_start:2416: start > >> usbd_transfer_done:2185: err=USB_ERR_NORMAL_COMPLETION > >> usbd_callback_wrapper:2030: case 1-4 > >> usbd_callback_wrapper_sub:2550: xfer=0xc72234f8 endpoint=0xc71f9000 > >> sts=0 alen=1 3, slen=13, afrm=1, nfrm=1 > >> usb_test_autoinstall:571: Eject CD command status: > >> USB_ERR_NORMAL_COMPLETION usbd_transfer_stop:1691: close > >> usbd_transfer_done:2185: err=USB_ERR_CANCELLED > >> usbd_transfer_done:2192: not transferring > >> usbd_transfer_stop:1691: close > >> usbd_transfer_done:2185: err=USB_ERR_CANCELLED > >> usbd_transfer_done:2192: not transferring > >> usbd_transfer_stop:1691: close > >> usbd_transfer_done:2185: err=USB_ERR_CANCELLED > >> usbd_transfer_done:2192: not transferring > >> usb_alloc_device:1781: Found Huawei auto-install disk! > >> usb_alloc_device:1789: new dev (addr 3), udev=0xc5dd5000, > >> parent_hub=0xc621b400 ugen0.3: at usbus0 > >> usb_set_device_state:2442: udev 0xc5dd5000 state CONFIGURED -> DETACHED > >> ugen0.3: at usbus0 (disconnected) > >> usb_cdev_free:1906: Freeing device nodes > >> usbd_transfer_stop:1691: close > >> usbd_transfer_done:2185: err=USB_ERR_CANCELLED > >> usbd_transfer_done:2192: not transferring > >> uhub_reattach_port:440: could not allocate new device! > >> > >> *sigh* Unfortunately, I don't understand what is happening here. > > > > Try: > > > > sysctl hw.usb.ehci.no_hs=1 > > Sorry, but I get the same messages: > > $ sysctl hw.usb.ehci.no_hs=1 > $ kldload u3g > > dmesg: > usb_test_autoinstall:571: Eject CD command status: > USB_ERR_NORMAL_COMPLETION usb_alloc_device:1781: Found Huawei auto-install > disk! > ugen0.2: at usbus0 > ugen0.2: at usbus0 (disconnected) > uhub_reattach_port:440: could not allocate new device! > Try this patch: src/sys/dev/usb/usb_device.c @@ -1777,7 +1777,8 @@ } } else if (usb_test_huawei_autoinst_p(udev, &uaa) == 0) { DPRINTFN(0, "Found Huawei auto-install disk!\n"); - err = USB_ERR_STALLED; /* fake an error */ + /* leave device unconfigured */ + usb_unconfigure(udev, USB_UNCFG_FLAG_FREE_SUBDEV); } } else { err = 0; /* set success */ --HPS