qemu-e2k/hw/pci-host
Daniel Henrique Barboza 6a1e1ce2ef ppc/pnv: fix QOM parenting of user creatable root ports
User creatable root ports are being parented by the 'peripheral' or the
'peripheral-anon' container. This happens because this is the regular
QOM schema for sysbus devices that are added via the command line.

Let's make this QOM hierarchy similar to what we have with default root
ports, i.e. the root port must be parented by the pnv-root-bus. To do
that we change the qom and bus parent of the root port during
root_port_realize(). The realize() is shared by the default root port
code path, so we can remove the code inside pnv_phb_attach_root_port()
that was adding the root port as a child of the bus as well.

After all that, remove pnv_phb_attach_root_port() and create the root
port explictly in the 'default_enabled()' case of pnv_phb_realize().

Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Frederic Barrat <fbarrat@linux.ibm.com>
Message-Id: <20220819094748.400578-3-danielhb413@gmail.com>
2022-08-31 14:08:06 -03:00
..
Kconfig dino: move from hw/hppa to hw/pci-host 2022-05-08 18:52:36 +01:00
bonito.c hw/pci-host/bonito: Allow PCI config accesses smaller than 32-bit 2021-07-02 17:34:55 +02:00
designware.c pci-host: designware: add pcie-msi read method 2021-02-08 15:15:32 +01:00
dino.c dino: move from hw/hppa to hw/pci-host 2022-05-08 18:52:36 +01:00
gpex-acpi.c hw/pci-host/gpex-acpi: Add support for dsdt construction for pxb-cxl 2022-05-13 07:57:26 -04:00
gpex.c hw/pci-host/gpex: Don't fault for unmapped parts of MMIO and PIO windows 2021-04-30 11:16:52 +01:00
grackle.c grackle: use qdev gpios for PCI IRQs 2020-10-18 16:21:42 +01:00
i440fx.c i386/pc: create pci-host qdev prior to pc_memory_init() 2022-07-26 10:40:58 -04:00
meson.build ppc/pnv: add PnvPHB base/proxy device 2022-08-31 14:08:05 -03:00
mv643xx.h hw/pci-host: Add emulation of Marvell MV64361 PPC system controller 2021-05-04 11:41:25 +10:00
mv64361.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
pam.c hw/pci-host/pam: Replace magic number by PAM_REGIONS_COUNT definition 2020-12-13 17:07:05 +01:00
pnv_phb.c ppc/pnv: fix QOM parenting of user creatable root ports 2022-08-31 14:08:06 -03:00
pnv_phb.h ppc/pnv: add pnv-phb-root-port device 2022-08-31 14:08:05 -03:00
pnv_phb3.c ppc/pnv: add phb-id/chip-id PnvPHB3RootBus properties 2022-08-31 14:08:05 -03:00
pnv_phb3_msi.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
pnv_phb3_pbcq.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
pnv_phb4.c ppc/pnv: add phb-id/chip-id PnvPHB4RootBus properties 2022-08-31 14:08:05 -03:00
pnv_phb4_pec.c ppc/pnv: enable user created pnv-phb for powernv9 2022-08-31 14:08:06 -03:00
ppce500.c Do not include exec/address-spaces.h if it's not really necessary 2021-05-02 17:24:51 +02:00
q35.c q35:Enable TSEG only when G_SMRAME and TSEG_EN both enabled 2022-06-15 11:11:37 +02:00
raven.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
remote.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
sabre.c Do not include exec/address-spaces.h if it's not really necessary 2021-05-02 17:24:51 +02:00
sh_pci.c hw/sh4: Coding style: White space fixes 2021-10-30 11:46:40 +02:00
trace-events dino: move from hw/hppa to hw/pci-host 2022-05-08 18:52:36 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
uninorth.c hw: Use the PCI_DEVFN() macro from 'hw/pci/pci.h' 2021-01-04 23:24:44 +01:00
versatile.c pci: Rename pci_root_bus_new_inplace() to pci_root_bus_init() 2021-09-30 13:42:10 +01:00
xen_igd_pt.c xen: Use ERRP_GUARD() 2020-07-10 15:18:09 +02:00
xilinx-pcie.c hw/mips/boston: Fix Lesser GPL version number 2020-11-03 16:51:13 +01:00