xemu/hw/dma
Alexey Kardashevskiy 3df9d74806 memory/iommu: QOM'fy IOMMU MemoryRegion
This defines new QOM object - IOMMUMemoryRegion - with MemoryRegion
as a parent.

This moves IOMMU-related fields from MR to IOMMU MR. However to avoid
dymanic QOM casting in fast path (address_space_translate, etc),
this adds an @is_iommu boolean flag to MR and provides new helper to
do simple cast to IOMMU MR - memory_region_get_iommu. The flag
is set in the instance init callback. This defines
memory_region_is_iommu as memory_region_get_iommu()!=NULL.

This switches MemoryRegion to IOMMUMemoryRegion in most places except
the ones where MemoryRegion may be an alias.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Message-Id: <20170711035620.4232-2-aik@ozlabs.ru>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2017-07-14 12:04:41 +02:00
..
bcm2835_dma.c hw: explicitly include qemu/log.h 2016-05-19 16:42:29 +02:00
etraxfs_dma.c etraxfs_dma: Dont forward zero-length payload to clients 2016-02-20 00:17:48 +01:00
i8257.c qdev: Replace cannot_instantiate_with_device_add_yet with !user_creatable 2017-05-17 10:37:00 -03:00
i82374.c i8257: pass ISA bus to DMA_init() function 2016-02-03 11:28:55 -05:00
Makefile.objs dma: Add Xilinx Zynq devcfg device model 2016-07-04 13:15:22 +01:00
omap_dma.c dma: omap: check dma channel data_type 2017-01-27 15:29:08 +00:00
pl080.c hw/dma/pl080: Fix bad bit mask (PL080_CONF_M1 | PL080_CONF_M1) 2016-10-17 19:22:17 +01:00
pl330.c migration: consolidate VMStateField.start 2017-02-13 17:27:13 +00:00
puv3_dma.c unicore: Clean up includes 2016-01-29 15:07:22 +00:00
pxa2xx_dma.c hw/dma: QOM'ify pxa2xx_dma.c 2016-06-14 15:59:14 +01:00
rc4030.c memory/iommu: QOM'fy IOMMU MemoryRegion 2017-07-14 12:04:41 +02:00
soc_dma.c hw: Clean up includes 2016-01-29 15:07:25 +00:00
sparc32_dma.c hw/dma: QOM'ify sparc32_dma.c 2017-06-02 05:54:43 +01:00
sun4m_iommu.c hw/dma: QOM'ify sun4m_iommu.c 2017-06-02 05:54:43 +01:00
trace-events trace-events: fix first line comment in trace-events 2016-08-12 10:36:01 +01:00
xilinx_axidma.c Reducing stack frame size in stream_process_mem2s() 2016-10-17 19:22:16 +01:00
xlnx_dpdma.c introduce xlnx-dpdma 2016-06-14 16:01:03 +01:00
xlnx-zynq-devcfg.c dma: Add Xilinx Zynq devcfg device model 2016-07-04 13:15:22 +01:00