qemu-patch-raspberry4/hw/dma
Paolo Bonzini 19d2b5e6ff i8257: rewrite DMA_schedule to avoid hooking into the CPU loop
The i8257 DMA controller uses an idle bottom half, which by default
does not cause the main loop to exit.  Therefore, the DMA_schedule
function is there to ensure that the CPU relinquishes the iothread
mutex to the iothread.

However, this is not enough since the iothread will call
aio_compute_timeout() and go to sleep again.  In the iothread
world, forcing execution of the idle bottom half is much simpler,
and only requires a call to qemu_notify_event().  Do it, removing
the need for the "cpu_request_exit" pseudo-irq.  The next patch
will remove it.

Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-09-09 15:34:53 +02:00
..
etraxfs_dma.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
i8257.c i8257: rewrite DMA_schedule to avoid hooking into the CPU loop 2015-09-09 15:34:53 +02:00
i82374.c PortioList: Store PortioList in device state 2014-05-05 20:58:33 +02:00
Makefile.objs hw: move DMA controllers to hw/dma/, configure with default-configs/ 2013-04-08 18:13:14 +02:00
omap_dma.c omap: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
pl080.c Switch non-CPU callers from ld/st*_phys to address_space_ld/st* 2015-04-26 16:49:24 +01:00
pl330.c pl330.c: remove superfluous '\n' around error_setg 2015-03-10 08:15:33 +03:00
puv3_dma.c puv3_dma: QOM cast cleanup 2013-07-29 21:06:45 +02:00
pxa2xx_dma.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
rc4030.c dma/rc4030: convert to QOM 2015-06-11 10:13:29 +01:00
soc_dma.c aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
sparc32_dma.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
sun4m_iommu.c Switch non-CPU callers from ld/st*_phys to address_space_ld/st* 2015-04-26 16:49:24 +01:00
xilinx_axidma.c Include qapi/qmp/qerror.h exactly where needed 2015-06-22 18:20:41 +02:00