Linux and PCI bridge

From: Kathy Frazier
Date: Wed Aug 27 2003 - 08:39:08 EST


Please CC your response.

We are currently debugging a problem involving 2 PCI boards that we have
developed. Our system eventually "hangs" after running for awhile. By this
I mean that no hardware interrupts can get through (keyboard, mouse,
ethernet, etc.). However, software components are still running. During
this process I added some debug software and have determined that individual
IRQs were not disabled at the 8259 interrupt controller. I have also
determined that interrupts are still on at the processor - so there was not
a naughty piece of software that did a "cli" and forget to clean up after
itself. Something is getting hosed in the hardware and interrupts are not
able to get from our PCI device to my driver. We have confirmed that our
device has it's interrupt asserted when it hangs. That makes the PCI bus,
bridge and Front Side Bus the suspects in this.

So, my questions to you are:

- Can anyone recommend any tools that would be useful in debugging this?
I've started looking at a couple of PCI bus analyzers, but I'm not sure that
it will allow me to detect anything with respect to the bridge or the FSB.

- Other than the handling of 8259 and APIC interrupts (BTW, we don't use
APIC), does the Linux O/S drive anything else in the bridge, or is this a
BIOS thing?

We have tried other slots, exclusive interrupt use and updates to BIOS. At
one point, I thought it was an APM related bug in the BIOS because we
experienced no failures once we told it to NOT issue CPU idle calls. Since
we don't need power management, we turned it off completely. However,
testing of our second product has not gone as well. We experience the same
symptoms.

Thanks in advance for your help.



Kathy Frazier
Senior Software Engineer
Max Daetwyler Corporation-Dayton Division
2133 Lyons Road
Miamisburg, OH 45342
Tel #: 937.439-1582 ext 6158
Fax #: 937.439-1592
Email: kfrazier@xxxxxxxxxxxxx
http://www.daetwyler.com



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