[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 2/2] 40p: add fixed IRQ routing fo
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 2/2] 40p: add fixed IRQ routing for LSI SCSI device |
Date: |
Thu, 13 Sep 2018 22:56:56 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.0 |
On 9/10/18 10:46 PM, Mark Cave-Ayland wrote:
> Whilst the PReP specification describes how all PCI IRQs are routed via IRQ
> 15 on the interrupt controller, the real 40p machine has a routing quirk in
> that the LSI SCSI device is routed directly to IRQ 13.
>
> Enable the external IRQ for the LSI SCSI device by wiring up the IRQ with
> qdev to the relevant interrupt controller gpio.
>
> Signed-off-by: Mark Cave-Ayland <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
> ---
> hw/ppc/prep.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/hw/ppc/prep.c b/hw/ppc/prep.c
> index 615865e46c..94fc36b7ef 100644
> --- a/hw/ppc/prep.c
> +++ b/hw/ppc/prep.c
> @@ -621,7 +621,7 @@ static void ibm_40p_init(MachineState *machine)
> CPUPPCState *env = NULL;
> uint16_t cmos_checksum;
> PowerPCCPU *cpu;
> - DeviceState *dev;
> + DeviceState *dev, *i82378_dev;
> SysBusDevice *pcihost, *s;
> Nvram *m48t59 = NULL;
> PCIBus *pci_bus;
> @@ -666,11 +666,11 @@ static void ibm_40p_init(MachineState *machine)
> }
>
> /* PCI -> ISA bridge */
> - dev = DEVICE(pci_create_simple(pci_bus, PCI_DEVFN(11, 0), "i82378"));
> - qdev_connect_gpio_out(dev, 0,
> + i82378_dev = DEVICE(pci_create_simple(pci_bus, PCI_DEVFN(11, 0),
> "i82378"));
> + qdev_connect_gpio_out(i82378_dev, 0,
> cpu->env.irq_inputs[PPC6xx_INPUT_INT]);
> - sysbus_connect_irq(pcihost, 0, qdev_get_gpio_in(dev, 15));
> - isa_bus = ISA_BUS(qdev_get_child_bus(dev, "isa.0"));
> + sysbus_connect_irq(pcihost, 0, qdev_get_gpio_in(i82378_dev, 15));
> + isa_bus = ISA_BUS(qdev_get_child_bus(i82378_dev, "isa.0"));
>
> /* Memory controller */
> dev = DEVICE(isa_create(isa_bus, "rs6000-mc"));
> @@ -703,6 +703,7 @@ static void ibm_40p_init(MachineState *machine)
> dev = DEVICE(pci_create_simple(pci_bus, PCI_DEVFN(1, 0),
> "lsi53c810"));
> lsi53c8xx_handle_legacy_cmdline(dev);
> + qdev_connect_gpio_out(dev, 0, qdev_get_gpio_in(i82378_dev, 13));
>
> /* XXX: s3-trio at PCI_DEVFN(2, 0) */
> pci_vga_init(pci_bus);
>
Re: [Qemu-ppc] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Hervé Poussineau, 2018/09/12
Re: [Qemu-ppc] [PATCH v3 0/2] 40p: fix PCI interrupt routing, David Gibson, 2018/09/16
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Mark Cave-Ayland, 2018/09/17
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Mark Cave-Ayland, 2018/09/18
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Mark Cave-Ayland, 2018/09/19
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Roman Kapl, 2018/09/19
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Roman Kapl, 2018/09/19
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Peter Maydell, 2018/09/19
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Mark Cave-Ayland, 2018/09/19
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 0/2] 40p: fix PCI interrupt routing, Mark Cave-Ayland, 2018/09/19