qemu-e2k/hw/arm
Igor Mammedov a3fc839635 platform-bus-device: use device plug callback instead of machine_done notifier
platform-bus were using machine_done notifier to get and map
(assign irq/mmio resources) dynamically added sysbus devices
after all '-device' options had been processed.
That however creates non obvious dependencies on ordering of
machine_done notifiers and requires carefull line juggling
to keep it working. For example see comment above
create_platform_bus() and 'straitforward' arm_load_kernel()
had to converted to machine_done notifier and that lead to
yet another machine_done notifier to keep it working
arm_register_platform_bus_fdt_creator().

Instead of hiding resource assignment in platform-bus-device
to magically initialize sysbus devices, use device plug
callback and assign resources explicitly at board level
at the moment each -device option is being processed.

That adds a bunch of machine declaration boiler plate to
e500plat board, similar to ARM/x86 but gets rid of hidden
machine_done notifier and would allow to remove the dependent
notifiers in ARM code simplifying it and making code flow
easier to follow.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Message-id: 1525691524-32265-3-git-send-email-imammedo@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2018-05-10 18:10:56 +01:00
..
allwinner-a10.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
armv7m.c armv7m: Forward init-svtor property to CPU object 2018-03-02 11:03:45 +00:00
aspeed_soc.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
aspeed.c hw/arm/aspeed: don't make 'boot_rom' region 'nomigrate' 2018-04-26 11:04:39 +01:00
bcm2835_peripherals.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
bcm2836.c hw/arm/bcm2836: Use the Cortex-A7 instead of Cortex-A15 2018-03-23 18:26:45 +00:00
boot.c arm: boot: set boot_info starting from first_cpu 2018-05-04 18:05:51 +01:00
collie.c arm: drop intermediate cpu_model -> cpu type parsing and use cpu type directly 2017-09-19 09:09:32 -03:00
cubieboard.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
digic_boards.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
digic.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
exynos4_boards.c hw: add .min_cpus and .default_cpus fields to machine_class 2017-11-13 13:55:27 +00:00
exynos4210.c hw/arm/exynos4210: add a comment about a very similar SDHCI (Spec. v2) 2018-02-13 16:15:08 +01:00
fsl-imx6.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
fsl-imx7.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
fsl-imx25.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
fsl-imx31.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
gumstix.c hw/arm: Replace fprintf(stderr, "*\n" with error_report() 2018-02-06 18:26:42 +01:00
highbank.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
imx25_pdk.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
integratorcp.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
iotkit.c hw/arm/iotkit.c: fix minor memory leak 2018-05-10 18:10:56 +01:00
kzm.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
mainstone.c hw/arm: Replace fprintf(stderr, "*\n" with error_report() 2018-02-06 18:26:42 +01:00
Makefile.objs hw/arm/smmuv3: Skeleton 2018-05-04 18:49:10 +01:00
mcimx7d-sabre.c Implement support for i.MX7 Sabre board 2018-03-09 17:09:43 +00:00
mps2-tz.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
mps2.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
msf2-soc.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
msf2-som.c msf2: Add Emcraft's Smartfusion2 SOM kit 2017-09-21 16:36:56 +01:00
musicpal.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
netduino2.c arm: drop intermediate cpu_model -> cpu type parsing and use cpu type directly 2017-09-19 09:09:32 -03:00
nseries.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
omap1.c hw/arm: Don't fail qtest due to missing SD card in -nodefaults mode 2018-05-04 18:05:51 +01:00
omap2.c hw/arm: Don't fail qtest due to missing SD card in -nodefaults mode 2018-05-04 18:05:51 +01:00
omap_sx1.c hw/arm: Replace fprintf(stderr, "*\n" with error_report() 2018-02-06 18:26:42 +01:00
palm.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
pxa2xx_gpio.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
pxa2xx_pic.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
pxa2xx.c hw/arm: Don't fail qtest due to missing SD card in -nodefaults mode 2018-05-04 18:05:51 +01:00
raspi.c hw/arm/raspi: Don't bother setting default_cpu_type 2018-04-26 11:04:39 +01:00
realview.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
sabrelite.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
smmu-common.c hw/arm/smmu-common: VMSAv8-64 page table walk 2018-05-04 18:05:51 +01:00
smmu-internal.h hw/arm/smmu-common: VMSAv8-64 page table walk 2018-05-04 18:05:51 +01:00
smmuv3-internal.h hw/arm/smmuv3: Implement translate callback 2018-05-04 18:51:25 +01:00
smmuv3.c hw/arm/smmuv3: Abort on vfio or vhost case 2018-05-04 18:52:58 +01:00
spitz.c hw/audio/wm8750: move WM8750 declarations from i2c/i2c.h to audio/wm8750.h 2018-02-02 08:19:25 +01:00
stellaris.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
stm32f205_soc.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
strongarm.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
strongarm.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
sysbus-fdt.c platform-bus-device: use device plug callback instead of machine_done notifier 2018-05-10 18:10:56 +01:00
tosa.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-03-12 16:12:46 +01:00
trace-events hw/arm/smmuv3: Implement translate callback 2018-05-04 18:51:25 +01:00
versatilepb.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
vexpress.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
virt-acpi-build.c hw/arm/virt-acpi-build: Add smmuv3 node in IORT table 2018-05-04 18:52:58 +01:00
virt.c platform-bus-device: use device plug callback instead of machine_done notifier 2018-05-10 18:10:56 +01:00
xilinx_zynq.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
xlnx-zcu102.c xlnx-zcu102: Add support for the ZynqMP QSPI 2017-12-13 17:59:22 +00:00
xlnx-zynqmp.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
z2.c hw/arm: Replace fprintf(stderr, "*\n" with error_report() 2018-02-06 18:26:42 +01:00