[PATCH 0/2] irq: add get_gsi callback

Eric Auger
2015-04-23T08:41:33Z

This series introduces a new callback function in IRQState, named
get_gsi_cb. It is supposed to be populated by the interrupt controller
and its role is to convert the interrupt controller pin number into
the global system interrupt (gsi) number. The gsi is used when setting
irqfd up.

With PCI there is a PCIINTxRoute bus lookup mechanism that enables to
retrieve the gsi from the PCI host controller/bridge pin. The conversion
is implemented by the PCI host controller. With platform devices, this
conversion function is implemented by the interrupt controller.

Besides the callback member, a setter is introduced. First user is
arm_gic_kvm. A public function wraps the callback, qemu_irq_get_gsi.

The first user of qemu_irq_get_gsi might be the VFIO platform device.
This will come in the "KVM platform device passthrough" series.

Eric Auger (2):
irq: add get_gsi callback
intc: arm_gic_kvm: set the get_gsi callback

hw/core/irq.c | 20 ++++++++++++++++++++
hw/intc/arm_gic_kvm.c | 10 ++++++++++
include/hw/irq.h | 8 ++++++++
3 files changed, 38 insertions(+)

--
1.8.3.2