Date: Thu, 4 Dec 2008 15:44:56 +0100 From: Hans Petter Selasky <hselasky@c2i.net> To: Michael <freebsdusb@bindone.de> Cc: freebsd-usb@freebsd.org Subject: Re: Device IDs for HP hs2300 HSDPA modem Message-ID: <200812041544.57108.hselasky@c2i.net> In-Reply-To: <49379FFF.6000007@bindone.de> References: <492D6E0D.7020500@bindone.de> <200812031631.59515.hselasky@c2i.net> <49379FFF.6000007@bindone.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 04 December 2008, Michael wrote: > Hans Petter Selasky wrote: > > On Wednesday 03 December 2008, Michael wrote: > >> Hans Petter Selasky wrote: > >>> On Tuesday 02 December 2008, Michael wrote: > >>>> 3. I tried using a current checkout of usb2 (and added all the device > >>>> IDs necessary), but serial_3g is missing (and therefore > >>>> commented out in sys/modules/usb2/Makefile), so I'm stuck there as > >>>> well. Is there actual hope that the problem > >>>> might not appear when using usb2? (all I know about usb2 is that > >>>> it's supposed to be giant-free, no idea if it can > >>>> handle these issues any better - seems like at least 50% of USB > >>>> devices are violating the standard in one way or > >>>> another anyway). > >>> > >>> Alfred forgot to add the Makefile. The 3g id's are now in > >>> core/usb2_msctest.c . I've sent him a patch to fix this, but have not > >>> heard from him yet, assuming he is very busy. > >>> > >>> Just copy one of the other serial driver Makefiles and add "u3g2.c". > >>> > >>> --HPS > >> > >> Ok, essentially this seems to work, even so there are some caveats: > >> 1. usb2_serial_3g has to be loaded before of usb2_controller_ehci > >> 2. When I disable the device (button or bios command) it is detached > >> correctly, > >> but reattaching it fails 9 out of 10 times with the following error: > >> kernel: usb2_alloc_device:1421: set address 2 failed (ignored) > >> kernel: usb2_alloc_device:1456: getting device descriptor at addr 2 > >> failed! kernel: uhub_reattach_port:402: could not allocate new device! > >> If I kldunload usb2_controller_ehci and reload it, its detected ok. > >> usb1 has no issues performing the same operation. > >> 3. The machine crashed once after reenabling the device. No crashdumps > >> here, mostly because I'm stupid :( > >> 4. There is only one serial device created (/dev/cuaU0), which > >> represents the data interface. The control interface is not detected. > >> (usb1 creates two interfaces /dev/cuaU0.0 for data and /dev/cuaU0.2 for > >> control). This is essential, because even so the data interface supports > >> most commands, it doesn't accept the PIN code entry cmomand (or other > >> maintenance commands). For testing purposes I disabled the PIN entry > >> requirement on the SIM and was able to get reasonable stable service (up > >> to 250kb/s). > >> > >> Let me know if there is anything I can do to help debugging the issues > >> above. I attached the patches for the HS2300 device. > >> > >> br > >> michael > > > > Hi, > > > > Try tuning the following knobs, one at a time. > > > > sysctl hw.usb2.ehci.no_hs=1 > > > > This will disable hooking on devices to high speed. > > > > I think there is a problem with your device! > > > > Another thing you can try before re-plugging: > > > > sysctl hw.usb2.ss_delay=2 > > > > Also try: > > > > sysctl hw.usb2.pr_recovery_delay=500 > > > > --HPS > > None of these knobs have a lasting effect. Sometimes it works, sometimes > it doesn't. Disconnecting/reconnecting at a fast pace confuses it > completely (missing the event completely). That's intersting because > usb1 seems to be able to keep track of that ok, so it should be > possible. Do you think this relates to caveat 1 (because I think > normally loading 3g after ehci should work)? Are there any debugging > knobs I should use to get more useful traces? See "sysctl hw.usb2" > What about 4, is there anything I can do or anybody to contact to figure > why the control device doesn't show up at all? (or is more a missing > feature than a bug?) Send me a dump of the usb-descriptors using: usbconfig -u xxx -a yyy dump_curr_config_desc And I will have a look at it. I suspect that the device is there, but has another unit ID than you expect. --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812041544.57108.hselasky>