mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 16:53:55 -06:00
ppc/pnv: Remove LSI on the PCIE host bridge
The phb3/phb4/phb5 root ports inherit from the default PCIE root port implementation, which requests a LSI interrupt (#INTA). On real hardware (POWER8/POWER9/POWER10), there is no such LSI. This patch corrects it so that it matches the hardware. As a consequence, the device tree previously generated was bogus, as the root bridge LSI was not properly mapped. On some implementation (powernv9), it was leading to inconsistent interrupt controller (xive) data. With this patch, it is now clean. Signed-off-by: Frederic Barrat <fbarrat@linux.ibm.com> Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> Message-Id: <20220408131303.147840-3-fbarrat@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
This commit is contained in:
parent
2e8656710a
commit
b34ce592fd
2 changed files with 2 additions and 0 deletions
|
@ -1161,6 +1161,7 @@ static void pnv_phb3_root_port_realize(DeviceState *dev, Error **errp)
|
|||
error_propagate(errp, local_err);
|
||||
return;
|
||||
}
|
||||
pci_config_set_interrupt_pin(pci->config, 0);
|
||||
}
|
||||
|
||||
static void pnv_phb3_root_port_class_init(ObjectClass *klass, void *data)
|
||||
|
|
|
@ -1771,6 +1771,7 @@ static void pnv_phb4_root_port_reset(DeviceState *dev)
|
|||
pci_set_word(conf + PCI_PREF_MEMORY_LIMIT, 0xfff1);
|
||||
pci_set_long(conf + PCI_PREF_BASE_UPPER32, 0x1); /* Hack */
|
||||
pci_set_long(conf + PCI_PREF_LIMIT_UPPER32, 0xffffffff);
|
||||
pci_config_set_interrupt_pin(conf, 0);
|
||||
}
|
||||
|
||||
static void pnv_phb4_root_port_realize(DeviceState *dev, Error **errp)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue