qemu/hw/i386
Peter Xu 651e4cefee intel_iommu: Add support for PCI MSI remap
This patch enables interrupt remapping for PCI devices.

To play the trick, one memory region "iommu_ir" is added as child region
of the original iommu memory region, covering range 0xfeeXXXXX (which is
the address range for APIC). All the writes to this range will be taken
as MSI, and translation is carried out only when IR is enabled.

Idea suggested by Paolo Bonzini.

Signed-off-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-07-20 19:31:04 +03:00
..
kvm Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +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: add DMAR scope definition for root IOAPIC 2016-07-20 19:30:27 +03:00
acpi-build.h Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
intel_iommu_internal.h intel_iommu: Add support for PCI MSI remap 2016-07-20 19:31:04 +03:00
intel_iommu.c intel_iommu: Add support for PCI MSI remap 2016-07-20 19:31:04 +03:00
kvmvapic.c cpu-exec: Rename cpu_resume_from_signal() to cpu_loop_exit_noexc() 2016-06-09 15:55:02 +01:00
Makefile.objs x86-iommu: introduce parent class 2016-07-20 19:30:27 +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 xen: fix ram init regression 2016-07-04 14:50:00 +03:00
pc_q35.c hw/iommu: enable iommu with -device 2016-07-04 14:50:58 +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 hw/i386: add device tree support 2016-07-17 09:59:21 +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 trace: split out trace events for hw/i386/ directory 2016-06-20 17:22:16 +01:00
x86-iommu.c x86-iommu: introduce "intremap" property 2016-07-20 19:30:27 +03:00