Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Dec 2001 01:27:35 +0000
From:      Tony <tony@ubik.demon.co.uk>
To:        freebsd-mobile@freebsd.org
Subject:   Re: USB Problems
Message-ID:  <TYj1nQAHmsD8IwKU@ubik.demon.co.uk>
In-Reply-To: <200112051002.LAA21436@bonn.rtg.consol.de>
References:  <200112051002.LAA21436@bonn.rtg.consol.de>

next in thread | previous in thread | raw e-mail | index | archive | help
In article <200112051002.LAA21436@bonn.rtg.consol.de>, Thorsten Greiner
<Thorsten.Greiner@consol.de> writes
>Since I got no response to my first posting, I will try again with a more
>detailed description. I'm trying to get USB working on my ASUS L7300 laptop.
>I am running 4.4-STABLE, my kernel config looks like this (USB part only):

I am not familiar with the workings of the USB stack on FreeBSD.
However I have worked on programming a USB host driver and testing this
with a commercial USB stack included in a Set-Top Box embedded OS.  As
this was at a client site a year ago I can't remember all the details.

[snip]
>So the USB controller is recognized and shows up in the usbdevs output. Now I 
>start usbd manually and connect my Logitech Mini Wheel Mouse. This happens:

A Logitech wheel mouse, and 'no name' versions with the same
microcontroller in various different mouldings, that caused me the most
hassle when testing my USB driver.

>Dec  5 09:45:40 tybalt /kernel: uhci_timeout: ii=0xc0cbcb00
>Dec  5 09:45:51 tybalt last message repeated 2 times
>Dec  5 09:45:51 tybalt /kernel: usbd_new_device: addr=2, getting first desc 
>failed
>Dec  5 09:45:51 tybalt /kernel: uhub_explore: usb_new_device failed, 
>error=TIMEOUT
>Dec  5 09:45:51 tybalt /kernel: uhub0: device problem, disabling port 1

Before integrating my USB driver to the STB I wrote a test harness that
read a device's information when a device was plugged in.

The Logitech mouse behaved weirdly in this test.  If device
configuration was not completed in a short time, (10's of milliseconds I
think), the mouse removed itself from the USB bus and reset it's
microcontroller.  My test harness was too slow, and the appearance was
that the mouse was being plugged & unplugged 2 times a second.

USB devices should not behave like this, it is certainly not specified
anywhere.  The person writing the device code felt there was a good
reason, perhaps to work with a buggy USB stack.  <shrug>  It caused me
some hassle, and eventually an hour of combat with a digital 'scope.

On a running system this particular weirdness in the mouse should not be
a problem, and if this what you are hitting it indicates the UHCI or
mouse drivers have too much latency during device configuration.

During my testing I also saw some other problems with devices
misbehaving if enumeration did not exactly follow the order of actions
the Windows USB stack uses.  I cannot remember if the Logitech mouse had
any of these.


>I have tried the same thing with the usb debug level raised to 10, but this 
>produces a lot of output - don't want to spam everybody with this.

If you want to do this and email the log to me I'll see whether I
recognise the symptoms.


Regards,
       Tony

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-mobile" in the body of the message




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