On Sun, Sep 29, 2013 at 05:40:54PM +0300, Marcel Apfelbaum wrote: > Interrupt pin is selected and saved into PCI_INTERRUPT_PIN > register during device initialization. Devices should not call > directly qemu_set_irq and specify the INTx pin. > > Replaced the call to qemu_set_irq with a new wrapper > pci_set_irq which triggers the irq based on PCI_INTERRUPT_PIN.
Looks good overall. As a next step, can we make pci_set_irq non-inline and make it call pci_irq_handler directly, and get rid of the irq field? This way we know no one is using it directly ... > Marcel Apfelbaum (3): > hw/pci: set irq without selecting INTx pin > hw/pci-bridge: set PCI_INTERRUPT_PIN register before shpc init > hw: assert/deassert interrupts using pci_set_irq wrapper > > hw/audio/ac97.c | 4 ++-- > hw/audio/es1370.c | 2 +- > hw/audio/intel-hda.c | 2 +- > hw/char/serial-pci.c | 2 +- > hw/char/tpci200.c | 4 ++-- > hw/display/qxl.c | 2 +- > hw/ide/cmd646.c | 2 +- > hw/isa/vt82c686.c | 2 +- > hw/misc/ivshmem.c | 2 +- > hw/net/e1000.c | 2 +- > hw/net/rtl8139.c | 2 +- > hw/pci-bridge/pci_bridge_dev.c | 2 +- > hw/pci/pci.c | 6 +++--- > hw/pci/shpc.c | 2 +- > hw/scsi/lsi53c895a.c | 2 +- > hw/scsi/vmw_pvscsi.c | 2 +- > hw/virtio/virtio-pci.c | 4 ++-- > include/hw/pci/pci.h | 7 +++++++ > 18 files changed, 29 insertions(+), 22 deletions(-) > > -- > 1.8.3.1