This fixes a bunch of bugs I ran into while reworking how qdevs plug into buses. I instrumented the code a bit to flush out instances of bug patterns. I'll post these hacks separately.
Impact is less than clear in places. Help with that is appreciated. Markus Armbruster (24): arm/stm32f405: Fix realization of "stm32f2xx-adc" devices display/xlnx_dp: Fix to realize "i2c-ddc" and "aux-to-i2c-bridge" sd/pxa2xx_mmci: Fix to realize "pxa2xx-mmci" device aspeed: Don't create unwanted "ftgmac100", "aspeed-mmi" devices aspeed: Don't create unwanted "cortex-a7-arm-cpu" devices armv7m: Bury unwanted "ARM,bitband-memory" devices auxbus: Fix aux-to-i2c-bridge to be a subtype of aux-slave mac_via: Fix to realize "mos6522-q800-via*" devices macio: Fix to realize "mos6522-cuda" and "mos6522-pmu" devices macio: Bury unwanted "macio-gpio" devices pnv/phb4: Bury unwanted "pnv-phb4-pec-stack" devices MAINTAINERS: Make section PowerNV cover pci-host/pnv* as well ppc4xx: Drop redundant device realization macio: Put "macio-nvram" device on the macio bus macio: Fix macio-bus to be a subtype of System bus ppc/pnv: Put "*-pnv-chip" and "pnv-xive" on the main system bus pnv/psi: Correct the pnv-psi* devices not to be sysbus devices display/sm501 display/ati: Fix to realize "i2c-ddc" riscv: Fix to put "riscv.hart_array" devices on sysbus riscv: Fix type of SiFive[EU]SocState, member parent_obj sparc/leon3: Fix to put grlib,* devices on sysbus qdev: Assert devices are plugged into a bus that can take them sd: Hide the qdev-but-not-quite thing created by sd_init() qdev: Assert onboard devices all get realized properly include/hw/ppc/pnv_psi.h | 2 +- include/hw/riscv/sifive_e.h | 2 +- include/hw/riscv/sifive_u.h | 2 +- hw/arm/armv7m.c | 6 ++++-- hw/arm/aspeed_ast2600.c | 5 ++++- hw/arm/aspeed_soc.c | 2 +- hw/arm/stm32f405_soc.c | 20 ++++++++++--------- hw/core/qdev.c | 21 +++++++++++++++++++ hw/display/ati.c | 1 + hw/display/sm501.c | 1 + hw/display/xlnx_dp.c | 4 ++++ hw/misc/auxbus.c | 2 +- hw/misc/mac_via.c | 3 +++ hw/misc/macio/cuda.c | 8 +++----- hw/misc/macio/macio.c | 7 +++++-- hw/misc/macio/pmu.c | 8 +++----- hw/pci-host/pnv_phb4_pec.c | 3 +++ hw/ppc/pnv.c | 6 +++--- hw/ppc/pnv_psi.c | 2 +- hw/ppc/ppc440_uc.c | 2 -- hw/riscv/sifive_e.c | 5 ++--- hw/riscv/sifive_u.c | 14 ++++++------- hw/riscv/spike.c | 12 +++++------ hw/riscv/virt.c | 4 ++-- hw/sd/pxa2xx_mmci.c | 1 + hw/sd/sd.c | 40 ++++++++++++++++++++++++++----------- hw/sparc/leon3.c | 4 ++-- MAINTAINERS | 2 ++ 28 files changed, 121 insertions(+), 68 deletions(-) -- 2.21.1