Help enabling PCI interrupts on Dell/SMP and Sun/SMP systems.

From: Alan Kilian
Date: Wed Feb 23 2005 - 15:25:09 EST




Folks,

This group was instrumental in helping me get my first-ever
linux/PCI-bus device driver working last year, and I'm back for
some more help if you are willing.

I have a PCI card that generates an interrupt when it completes
a DMA transfer to the PCs RAM.

This works just fine on a Dell 4400 running 2.6.10-1.766_FC3

When I try to run the driver on a Dell 2300 FC2/2.6.5-1.358smp
or a Sun W2100Z running FC2/2.6.10-1.14_FC2smp I can see the
DMA-done bit set in the device, but my interrupt service routine
never gets called.

On the Sun, I booted with "noapic" option, and it booted OK,
but then when my device generated an interrupt, there was a
kernel message about Disabling IRQ #5 and the system was hung
solidly.

I think this has something to do with the different interrupt
hardware on the more advanced servers compared to my desktop
Dell 4400, and I somehow need to "enable" the IOAPIC system
so that my interrupt gets through to my service routine, but I
don't know how.

I tried grepping through the kernel/drivers source, and I didn't
find anything that jumped out at me.

The Rubini drivers book didn't help in this area either,
although it's a wonderful book in other areas.

I can post source somewhere if it will help.

I can also post the essential bits from /var/log/messages about
all the incredibly complicated IOAPIC configuration stuff.

Thank you for your past help, and thank you in advance for any
tips you can provide.

-Alan

--
- Alan Kilian <kilian(at)bobodyne.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/