mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-12-17 21:26:13 -07:00
We need a handful of changes that needs to be done in a single swoop to turn PnvPHB3 into a PnvPHB backend. In the PnvPHB3, since the PnvPHB device implements PCIExpressHost and will hold the PCI bus, change PnvPHB3 parent to TYPE_DEVICE. There are a couple of instances in pnv_phb3.c that needs to access the PCI bus, so a phb_base pointer is added to allow access to the parent PnvPHB. The PnvPHB3 root port will now be connected to a PnvPHB object. In pnv.c, the powernv8 machine chip8 will now hold an array of PnvPHB objects. pnv_get_phb3_child() needs to be adapted to return the PnvPHB3 backend from the PnvPHB child. A global property is added in pnv_machine_power8_class_init() to ensure that all PnvPHBs are created with phb->version = 3. After all these changes we're still able to boot a powernv8 machine with default settings. The real gain will come with user created PnvPHB devices, coming up next. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> Reviewed-by: Frederic Barrat <fbarrat@linux.ibm.com> Message-Id: <20220624084921.399219-4-danielhb413@gmail.com> |
||
|---|---|---|
| .. | ||
| bonito.c | ||
| designware.c | ||
| dino.c | ||
| gpex-acpi.c | ||
| gpex.c | ||
| grackle.c | ||
| i440fx.c | ||
| Kconfig | ||
| meson.build | ||
| mv643xx.h | ||
| mv64361.c | ||
| pam.c | ||
| pnv_phb.c | ||
| pnv_phb.h | ||
| pnv_phb3.c | ||
| pnv_phb3_msi.c | ||
| pnv_phb3_pbcq.c | ||
| pnv_phb4.c | ||
| pnv_phb4_pec.c | ||
| ppce500.c | ||
| q35.c | ||
| raven.c | ||
| remote.c | ||
| sabre.c | ||
| sh_pci.c | ||
| trace-events | ||
| trace.h | ||
| uninorth.c | ||
| versatile.c | ||
| xen_igd_pt.c | ||
| xilinx-pcie.c | ||