qemu-e2k/hw/dma
Philippe Mathieu-Daudé 4968a2c6ed hw/dma/i82374: Avoid double creation of the 82374 controller
QEMU fails when used with the following command line:

    ./ppc64-softmmu/qemu-system-ppc64 -S -machine 40p -device i82374
    qemu-system-ppc64: hw/isa/isa-bus.c:110: isa_bus_dma: Assertion `!bus->dma[0] && !bus->dma[1]' failed.

The 40p machine type already creates the device i82374. If specified in the
command line, it will try to create it again, hence generating the error. The
function isa_bus_dma() isn't supposed to be called twice for the same bus.
Check the bus doesn't already have a DMA controller registered before creating
the device.

Fixes: https://bugs.launchpad.net/qemu/+bug/1721224
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20180326153441.32641-2-f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2018-04-09 16:36:39 +02:00
..
bcm2835_dma.c
etraxfs_dma.c
i8257.c hw/dma/i8257: Rename DMA_init() to i8257_dma_init() 2018-03-12 16:12:48 +01:00
i82374.c hw/dma/i82374: Avoid double creation of the 82374 controller 2018-04-09 16:36:39 +02:00
Makefile.objs aarch64-softmmu.mak: Use an ARM specific config 2018-01-26 11:09:09 +01:00
omap_dma.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
pl080.c
pl330.c maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
puv3_dma.c
pxa2xx_dma.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
rc4030.c
soc_dma.c hw/dma: Replace fprintf(stderr, "*\n" with error_report() 2018-02-06 18:29:09 +01:00
sparc32_dma.c sun4m: remove include/hw/sparc/sun4m.h and all references to it 2018-01-09 21:48:20 +00:00
trace-events sun4m: move sun4m_iommu.c from hw/dma to hw/sparc 2018-01-09 21:48:19 +00:00
xilinx_axidma.c
xlnx_dpdma.c maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
xlnx-zynq-devcfg.c maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00