On Sat, May 12, 2012 at 05:29:53PM +1000, Alexey Kardashevskiy wrote:
> There is a need for a mechanism to obtain an IRQ line number to
> initialize End-Of-Interrupt handler.
> 
> There is another proposed solution (commit
> b7790763828b732059ad24ba0e64ce327563fe1a "pci: Add callbacks
> to support retrieving and updating interrupts") which adds pci_get_irq
> callback to every PCI bus to allow an external caller to calculate
> IRQ number from IRQ line (ABDD).
> 
> However it seems to be too complicated as it affects all PCI buses
> while the only user of it is VFIO-PCI so this could be done simpler
> by an array of 4 IRQs (lines A, B, C, D) in struct PCIBus which
> every platform would initialize in its own way.

I think you need to pin down the definition of what's going on here a
bit better.  Not all platforms have a concept of global IRQ number,
and the usual qemu_irq model supports that.  So for this function who
is it that is defining the number space in which pci_get_irq() is
returning values.

-- 
David Gibson                    | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
                                | _way_ _around_!
http://www.ozlabs.org/~dgibson

Reply via email to