[PATCH 1/2] irqdomain: add support for creating a continous mapping
Sebastian Andrzej Siewior
bigeasy at linutronix.de
Tue Nov 4 19:35:35 AEDT 2014
On 11/03/2014 11:18 PM, Scott Wood wrote:
> Is it really necessary for the virqs to be contiguous? How is the
> availability of multiple MSIs communicated to the driver? Is there an
> example of a driver that currently uses multiple MSIs?
I used this in PCI and after enabling 2^x, I allocated an continuous
block starting at virq. There is no way of communicating this in any
other way. The first irq number is saved in pci_dev->irq and the
remaining have to follow.
Take a look at drivers/ata/ahci.c and you will see:
- pci_msi_vec_count() for number of irqs
- pci_enable_msi_block() to allocate the number of irqs
- pci_enable_msi() (no X)
- ahci_host_activate() does request_threaded_irq() for pdev->irq and
loops "number of ports" times which matches number of number of irqs
(or is less then).
Sebastian
More information about the Linuxppc-dev
mailing list