Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Apr 2008 17:40:56 GMT
From:      Dominic Fandrey <kamikaze@bsdforen.de>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   kern/122936: [ucom][ubsa] Device does not receive interrupt
Message-ID:  <200804201740.m3KHeunw046484@www.freebsd.org>
Resent-Message-ID: <200804201750.m3KHo2fv001009@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         122936
>Category:       kern
>Synopsis:       [ucom][ubsa] Device does not receive interrupt
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Apr 20 17:50:02 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator:     Dominic Fandrey
>Release:        RELENG_7
>Organization:
private
>Environment:
FreeBSD mobileKamikaze.norad 7.0-STABLE FreeBSD 7.0-STABLE #0: Sat Apr 19 01:05:43 CEST 2008     root@mobileKamikaze.norad:/usr/obj/HP6510b/amd64/usr/src/sys/HP6510b  amd64

>Description:
I'm using a USB UMTS modem (Huawei Mobile Compact HSDPA USB Stick), which also attaches as a CD-drive (with the Windows drivers) and is an XD-card reader. When the ubsa module is loaded only the modem part is recognized, though. This doesn't matter in my case, because the modem part is all I care about. The following snippet from messages will demonstrate my problem:

Apr 20 19:00:33 mobileKamikaze root: Unknown USB device: vendor 0x12d1 product 0x1001 bus uhub3
Apr 20 19:00:33 mobileKamikaze kernel: ucom0: <&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533; HUAWEI Mobile, class 0/0, rev 1.10/0.00, addr 3> on uhub3
Apr 20 19:00:33 mobileKamikaze kernel: ucom0: Could not find interrupt in
Apr 20 19:00:33 mobileKamikaze kernel: device_attach: ucom0 attach returned 6
Apr 20 19:00:38 mobileKamikaze kernel: ucom0: at uhub3 port 1 (addr 3) disconnected
Apr 20 19:00:48 mobileKamikaze kernel: ucom0: <&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533; HUAWEI Mobile, class 0/0, rev 1.10/0.00, addr 3> on uhub3
Apr 20 19:00:48 mobileKamikaze kernel: ucom0: Could not find interrupt in
Apr 20 19:00:48 mobileKamikaze kernel: device_attach: ucom0 attach returned 6

I have dug into ubsa.c and ucom.c, the problem appears to be lying deeper in the innards of the USB stack.

If I unplug the device and plug it back in a couple of times (sometimes only 2 or three times, sometimes I have to try for an hour) the stick gets initialized properly:

Apr 20 19:01:30 mobileKamikaze kernel: ucom0: <&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533; HUAWEI Mobile, class 0/0, rev 1.10/0.00, addr 3> on uhub3

It appears that how often I have to try depends on the connection quality. Once the device is attached properly, it works without problems. I am writing this PR from a train.
>How-To-Repeat:
Just plug in an affected stick.
>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200804201740.m3KHeunw046484>