qemu-e2k/include/hw/misc
Peter Maydell 344f4b1581 hw/misc/tz-mpc.c: Implement the Arm TrustZone Memory Protection Controller
Implement the Arm TrustZone Memory Protection Controller, which sits
in front of RAM and allows secure software to configure it to either
pass through or reject transactions.

We implement the MPC as a QEMU IOMMU, which will direct transactions
either through to the devices and memory behind it or to a special
"never works" AddressSpace if they are blocked.

This initial commit implements the skeleton of the device:
 * it always permits accesses
 * it doesn't implement most of the registers
 * it doesn't implement the interrupt or other behaviour
   for blocked transactions

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Message-id: 20180620132032.28865-2-peter.maydell@linaro.org
2018-06-22 13:28:39 +01:00
..
macio mac_newworld: add PMU device 2018-06-16 16:32:33 +10:00
a9scu.h
arm11scu.h
arm_integrator_debug.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
aspeed_scu.h hw/arm/aspeed: Unlock SCU when running kernel 2017-11-20 13:47:49 +00:00
aspeed_sdmc.h aspeed: add a ram_size property to the memory controller 2016-09-22 18:13:06 +01:00
auxbus.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
bcm2835_mbox.h hw: Do not include "exec/address-spaces.h" if it is not necessary 2018-06-01 14:15:10 +02:00
bcm2835_mbox_defs.h bcm2835_mbox: add BCM2835 mailboxes 2016-02-03 14:56:32 +00:00
bcm2835_property.h hw: Do not include "exec/address-spaces.h" if it is not necessary 2018-06-01 14:15:10 +02:00
bcm2835_rng.h target-arm: Implement BCM2835 hardware RNG 2017-02-28 12:08:13 +00:00
imx2_wdt.h i.MX: Add code to emulate i.MX2 watchdog IP block 2018-02-09 10:40:29 +00:00
imx6_ccm.h i.MX: Add i.MX6 CCM and ANALOG device. 2016-03-16 17:42:18 +00:00
imx6_src.h i.MX: Add i.MX6 System Reset Controller device. 2016-05-12 13:22:28 +01:00
imx7_ccm.h i.MX: Add code to emulate i.MX7 CCM, PMU and ANALOG IP blocks 2018-02-09 10:40:29 +00:00
imx7_gpr.h i.MX: Add implementation of i.MX7 GPR IP block 2018-02-09 10:40:30 +00:00
imx7_snvs.h i.MX: Add code to emulate i.MX7 SNVS IP-block 2018-02-09 10:40:30 +00:00
imx25_ccm.h
imx31_ccm.h i.MX: move i.MX31 CCM object to register array 2016-01-11 15:52:18 +00:00
imx_ccm.h i.MX: split the GPT timer implementation into per SOC definitions 2016-07-07 13:47:01 +01:00
iotkit-secctl.h hw/misc/iotkit-secctl: Add remaining simple registers 2018-03-02 11:03:45 +00:00
ivshmem.h
mips_cmgcr.h hw/mips_cmgcr: allow GCR base to be moved 2017-02-21 22:24:58 +00:00
mips_cpc.h hw/mips: add initial Cluster Power Controller support 2016-03-30 09:13:59 +01:00
mips_itu.h hw/misc/mips_itu: Cleanup includes 2018-06-01 14:15:10 +02:00
mmio_interface.h introduce mmio_interface 2017-06-27 15:09:15 +02:00
mos6522.h mos6522: expose mos6522_update_irq() through MOS6522DeviceClass 2018-06-16 16:32:33 +10:00
mps2-fpgaio.h hw/misc/mps2-fpgaio: FPGA control block for MPS2 AN505 2018-03-02 11:03:45 +00:00
mps2-scc.h hw/misc/mps2_scc: Implement MPS2 Serial Communication Controller 2017-07-17 13:36:08 +01:00
msf2-sysreg.h msf2: Microsemi Smartfusion2 System Register block 2017-09-21 16:36:56 +01:00
pca9552.h misc: add pca9552 LED blinker model 2018-06-08 13:15:32 +01:00
pca9552_regs.h misc: add pca9552 LED blinker model 2018-06-08 13:15:32 +01:00
pvpanic.h hw/misc/pvpanic: extract public API from i386/pc to "hw/misc/pvpanic.h" 2017-12-18 17:07:02 +03:00
stm32f2xx_syscfg.h
tmp105_regs.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
tz-mpc.h hw/misc/tz-mpc.c: Implement the Arm TrustZone Memory Protection Controller 2018-06-22 13:28:39 +01:00
tz-ppc.h hw/misc/tz-ppc: Model TrustZone peripheral protection controller 2018-03-02 11:03:45 +00:00
unimp.h hw/misc/unimp: Move struct to header file 2018-03-02 11:03:45 +00:00
vmcoreinfo.h hw/misc: add vmcoreinfo device 2017-10-15 05:54:40 +03:00
zynq-xadc.h