Re: PROBLEM: kernel 2.4.0-test11-ac1 hang with usb-uhci and emu10k1

From: Michael Elkins (me@sigpipe.org)
Date: Thu Nov 23 2000 - 17:45:17 EST


On Thu, Nov 23, 2000 at 05:49:52PM +0100, Georg Acher wrote:
> On Thu, Nov 23, 2000 at 04:35:33PM +0000, Rui Sousa wrote:
> > On Thu, 23 Nov 2000, Michael Elkins wrote:
> >
> > Usb controller is sharing a interrupt with the emu10k1.
> > For what I know the emu10k1 driver doesn't have any problem
> > sharing irq's, so I would blame the usb driver...
>
> usb-uhci doesn't also have any problem with sharing irqs:
>
> > cat /proc/interrupts
> 10: 5597981 XT-PIC aic7xxx, eth0, usb-uhci
>
> Hm, no one left to blame...
> I would debug it as follows:
> Place various printks in the initialization code (reset_hc(), start_hc() and
> alloc_uhci) and find out after which printk it hangs. Then it would be
> possible to investigate this further...

It hangs in start_uhci():

                /* disable legacy emulation */
                pci_write_config_word (dev, USBLEGSUP, USBLEGSUP_DEFAULT);

The loop that the call is in gets iterated 5 times. For i < 4, the
                if (!(dev->resource[i].flags & 1))
is TRUE, but on i==4, it drops into the bottom of the loop to execute
check_region() and then pci_write_config_word(), where it hangs.

This only seems to be a problem for initialization. If I load the
usb-uhci.o module before the emu10k1.o module, everything works perfectly
(no lockups).

me
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Nov 23 2000 - 21:00:26 EST