qemu/hw/arm
Peter Maydell 112a829f8f hw/dma/pl080: Don't use CPU address space for DMA accesses
Currently our PL080/PL081 model uses a combination of the CPU's
address space (via cpu_physical_memory_{read,write}()) and the
system address space for performing DMA accesses.

For the PL081s in the MPS FPGA images, their DMA accesses
must go via Master Security Controllers. Switch the
PL080/PL081 model to take a MemoryRegion property which
defines its downstream for making DMA accesses.

Since the PL08x are only used in two board models, we
make provision of the 'downstream' link mandatory and convert
both users at once, rather than having it be optional with
a default to the system address space.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2018-08-20 11:24:33 +01:00
..
allwinner-a10.c hw/arm/allwinner-a10: Fix introspection problem with 'allwinner-a10' 2018-07-17 13:12:49 +01:00
armv7m.c nvic: Expose NMI line 2018-08-20 11:24:33 +01:00
aspeed_soc.c aspeed: add a max_ram_size property to the memory controller 2018-08-16 14:29:58 +01:00
aspeed.c aspeed: add a max_ram_size property to the memory controller 2018-08-16 14:29:58 +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: Fix crash with device_add bcm2837 on unsupported machines 2018-07-17 13:12:49 +01:00
boot.c arm: Fix return code of arm_load_elf 2018-08-14 17:17:21 +01:00
collie.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02: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 Remove unnecessary variables for function return value 2018-05-20 08:48:13 +03:00
fsl-imx6.c hw/arm/fsl-imx6: Fix introspection problems with the "fsl, imx6" device 2018-07-17 13:12:49 +01:00
fsl-imx6ul.c i.MX6UL: Add i.MX6UL SOC 2018-08-16 14:05:28 +01:00
fsl-imx7.c hw/arm/fsl-imx7: Fix introspection problems with the "fsl, imx7" device 2018-07-17 13:12:49 +01:00
fsl-imx25.c hw/arm/fsl-imx25: Fix introspection problem with the "fsl, imx25" device 2018-07-17 13:12:49 +01:00
fsl-imx31.c hw/arm/fsl-imx31: Fix introspection problem with the "fsl, imx31" device 2018-07-17 13:12:49 +01:00
gumstix.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02: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: Fix IRQ number for timer1 2018-07-30 14:51:40 +01:00
kzm.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
mainstone.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
Makefile.objs i.MX6UL: Add Freescale i.MX6 UltraLite 14x14 EVK Board 2018-08-16 14:05:28 +01:00
mcimx6ul-evk.c i.MX6UL: Add Freescale i.MX6 UltraLite 14x14 EVK Board 2018-08-16 14:05:28 +01:00
mcimx7d-sabre.c i.mx7d: Remove unused header files 2018-06-29 15:11:16 +01:00
mps2-tz.c hw/arm/mps2-tz: Replace init_sysbus_child() with sysbus_init_child_obj() 2018-08-16 14:29:58 +01:00
mps2.c hw/arm: make bitbanded IO optional on ARMv7-M 2018-08-16 14:05:28 +01:00
msf2-soc.c hw/arm: make bitbanded IO optional on ARMv7-M 2018-08-16 14:05:28 +01:00
msf2-som.c hw: Directly use "qemu/units.h" instead of "qemu/cutils.h" 2018-07-02 15:41:12 +02: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 hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
omap1.c hw/arm/omap1: Use qemu_log_mask(GUEST_ERROR) instead of fprintf 2018-06-26 17:50:40 +01:00
omap2.c hw: Do not include "sysemu/blockdev.h" if it is not necessary 2018-06-01 14:15:10 +02:00
omap_sx1.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02: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: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
raspi.c hw/arm/raspi: Don't bother setting default_cpu_type 2018-04-26 11:04:39 +01:00
realview.c hw/dma/pl080: Don't use CPU address space for DMA accesses 2018-08-20 11:24:33 +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: Fix devfn computation in smmu_iommu_mr 2018-07-09 14:51:34 +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: Fix translate error handling 2018-06-26 17:50:42 +01:00
smmuv3.c arm/smmuv3: Fix missing VMSD terminator 2018-07-30 14:45:54 +01:00
spitz.c hw/arm/spitz: Move problematic nand_init() code to realize function 2018-07-23 15:21:26 +01:00
stellaris.c hw/arm: make bitbanded IO optional on ARMv7-M 2018-08-16 14:05:28 +01:00
stm32f205_soc.c hw/arm: make bitbanded IO optional on ARMv7-M 2018-08-16 14:05:28 +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 hw/arm/sysbus-fdt: Fix assertion in copy_properties_from_host() 2018-07-30 14:47:32 +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: Add notifications on invalidation 2018-06-26 17:50:42 +01:00
versatilepb.c hw/dma/pl080: Don't use CPU address space for DMA accesses 2018-08-20 11:24:33 +01:00
vexpress.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
virt-acpi-build.c arm/virt: Add support for GICv2 virtualization extensions 2018-08-14 17:17:21 +01:00
virt.c hw/arm/virt: Add virt-3.1 machine type 2018-08-20 11:24:32 +01:00
xilinx_zynq.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
xlnx-zcu102.c xlnx-zynqmp: Swap Cortex-R5 for Cortex-R5F 2018-06-22 13:28:38 +01:00
xlnx-zynqmp.c xlnx-zynqmp: Improve GIC wiring and MMIO mapping 2018-08-14 17:17:21 +01:00
z2.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00