Hi,
my last mail about this got lost somehow, so ignore this mail, if you have
received it twice...

After maturing for more than a month, I decided that it's enough...
So here's the patch for the HCD-version of usb-uhci, I called it
usb-uhci-hcd. For me, the usual devices work (TM).

Since the internals haven't changed much, I don't expect much difference to
usb-uhci in functionality and performance.

There is one major improvement: I've added a (preliminary) watchdog, that
regularly checks whether UHCI interrupts are coming through. If they are
"missing", ie. the HC halted without saying so, the HC is "re-animated" by a
real and clean restart, which is (internally) equivalent to a module-reload.  
This is especially for VIA-chips which get comatose quite easily by babble
or other incorrect transfers.

The side effect is, of course, disconnects for all connected devices, but
they re-appear after a few seconds and were dead before anyway. So keyboard
and mouse work again, which is IMO a _very_ useful thing :-)

Another point: The watchdog (currently with moderate 8 interrupts/s) detects
IRQ-problems, so the misleading "device doesn't accept new device"-message  
is replaced by an immediate error.

More comments and the separation into multiple files (I've taken ohci-hcd as
an example) should make the code more concise...

A few things are still on the todo-list and will come later:
- A few watchdog modifications (fewer interrupts, better diagnostics)
- Support for module "tune"-parameters for breadth/depth search, debug etc.
- interval support for ISO
- More SMP-tests
- maybe changes for reference counting when it is clear what survives :-)

The gzip'ed patch is against 2.5.15 and includes hopefully all files.
Please apply and test...

-- 
         Georg Acher, [EMAIL PROTECTED]         
         http://www.in.tum.de/~acher/
          "Oh no, not again !" The bowl of petunias          

Attachment: usb-uhci-hcd.patch.gz
Description: application/gunzip

Reply via email to