From: mahi on
Hi All,

For my PCI card i can able to read the IRQ line in single core
system, using PCI_INTERRUPT_LINE.And using that IRQ line i am getting
Interrupts

But on SMP systems, i can albe to read IRQ line but i am not getting
Interrupts.....because...
the assigned IRQ is not equal to which i have requested.

if i type "lspci -vvx" i am getting another IRQ Line , which is not
equal to read IRQ. ..........So please help how do i get the Exact IRQ
number without looking at "lspci -vvx" on SMP systems.

Thanks in Advance,
Mahender Reddy
From: steve_schefter on
Hi Mahender.

>        For my PCI card i can able to read the IRQ line in single core
> system, using PCI_INTERRUPT_LINE.And using that IRQ line i am getting
> Interrupts
>
> But on SMP systems, i can albe to read IRQ line but i am not getting
> Interrupts.....because...
> the assigned IRQ is not equal to which i have requested.

You need to use the IRQ number from the struct pci_dev
you get back from pci_get_device() rather than directly
reading the config register. You should also use this
for the card addresses too (resource[].start) rather than
reading the BAR registers directly.

Regards,
Steve