Hi, While trying this PCI host bridge in a hegerogeneous setup I noticed few discrepancies due to the fact that host bridge pieces were managed by the root function.
This series move these pieces (ViewPort and MSI regs) to the host bridge side where they belong. Unfortunately this is a migration breakage. I recommend reviewing using 'git-diff --color-moved=dimmed-zebra'. Regards, Phil. Philippe Mathieu-Daudé (8): hw/pci-host/designware: Declare CPU QOM types using DEFINE_TYPES() macro hw/pci-host/designware: Initialize root function in host bridge realize hw/pci-host/designware: Add 'host_mem' variable for clarity hw/pci-host/designware: Hoist host controller in root function #0 hw/pci-host/designware: Keep host reference in DesignwarePCIEViewport hw/pci-host/designware: Move viewports from root func to host bridge hw/pci-host/designware: Move MSI registers from root func to host bridge hw/pci-host/designware: Create ViewPorts during host bridge realization include/hw/pci-host/designware.h | 20 +- hw/pci-host/designware.c | 376 +++++++++++++++---------------- 2 files changed, 187 insertions(+), 209 deletions(-) -- 2.41.0