qemu/hw/i386
David Kiarie d29a09ca68 hw/i386: Introduce AMD IOMMU
Add AMD IOMMU emulaton to Qemu in addition to Intel IOMMU.
The IOMMU does basic translation, error checking and has a
minimal IOTLB implementation. This IOMMU bypassed the need
for target aborts by responding with IOMMU_NONE access rights
and exempts the region 0xfee00000-0xfeefffff from translation
as it is the q35 interrupt region.

We advertise features that are not yet implemented to please
the Linux IOMMU driver.

IOTLB aims at implementing commands on real IOMMUs which is
essential for debugging and may not offer any performance
benefits

Signed-off-by: David Kiarie <davidkiarie4@gmail.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-09-24 01:02:00 +03:00
..
kvm kvm: apic: set APIC base as part of kvm_apic_put 2016-09-22 17:25:59 +02:00
xen include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
acpi-build.c acpi-build: fix array leak 2016-09-08 18:05:21 +04:00
acpi-build.h Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
amd_iommu.c hw/i386: Introduce AMD IOMMU 2016-09-24 01:02:00 +03:00
amd_iommu.h hw/i386: Introduce AMD IOMMU 2016-09-24 01:02:00 +03:00
intel_iommu_internal.h intel_iommu: support all masks in interrupt entry cache invalidation 2016-07-21 20:44:19 +03:00
intel_iommu.c intel_iommu: avoid unnamed fields 2016-07-21 20:44:20 +03:00
kvmvapic.c kvmvapic: fix state change handler 2016-09-15 15:10:06 +02:00
Makefile.objs hw/i386: Introduce AMD IOMMU 2016-09-24 01:02:00 +03:00
multiboot.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
multiboot.h refer to FWCfgState explicitly 2013-06-02 18:14:02 +03:00
pc_piix.c pc: Add 2.8 machine 2016-09-09 20:58:34 +03:00
pc_q35.c pc: Add 2.8 machine 2016-09-09 20:58:34 +03:00
pc_sysfw.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
pc.c pc: apic: fix touch LAPIC when irqchip is split 2016-09-14 12:25:14 +02:00
pci-assign-load-rom.c pci-assign: Move "Invalid ROM" error message to pci-assign-load-rom.c 2016-06-29 14:03:47 +02:00
trace-events hw/i386/trace-events: Add AMD IOMMU trace events 2016-09-23 19:03:56 +03:00
x86-iommu.c x86-iommu: introduce IEC notifiers 2016-07-21 20:43:49 +03:00