qemu-e2k/include/hw
Alexey Kardashevskiy d78c19b5cf memory: Fix IOMMU replay base address
Since a788f227 "memory: Allow replay of IOMMU mapping notifications"
when new VFIO listener is added, all existing IOMMU mappings are
replayed. However there is a problem that the base address of
an IOMMU memory region (IOMMU MR) is ignored which is not a problem
for the existing user (which is pseries) with its default 32bit DMA
window starting at 0 but it is if there is another DMA window.

This stores the IOMMU's offset_within_address_space and adjusts
the IOVA before calling vfio_dma_map/vfio_dma_unmap.

As the IOMMU notifier expects IOVA offset rather than the absolute
address, this also adjusts IOVA in sPAPR H_PUT_TCE handler before
calling notifier(s).

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2016-05-26 11:12:08 -06:00
..
acpi qemu-common: stop including qemu/host-utils.h from qemu-common.h 2016-05-19 16:42:28 +02:00
arm qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
audio
block fdc: add function to determine drive chs limits 2016-03-11 14:55:15 +02:00
char Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
cpu icc_bus: drop the unused files 2015-10-02 16:22:02 -03:00
cris
display bcm2835_fb: add framebuffer device for Raspberry Pi 2016-03-16 17:42:18 +00:00
dma bcm2835_dma: add emulation of Raspberry Pi DMA controller 2016-03-16 17:42:18 +00:00
gpio i.MX: add support for lower and upper interrupt in GPIO. 2015-12-17 13:37:13 +00:00
i2c i.MX: Add I2C controller emulator 2015-09-07 10:39:30 +01:00
i386 pc: Set CPU model-id on compat_props for pc <= 2.4 2016-05-23 13:19:36 -03:00
input cuda: port SET_DEVICE_LIST command to new framework 2016-02-17 09:59:30 +11:00
intc hw/intc: Add (new) ASPEED VIC device model 2016-03-16 17:42:18 +00:00
ipack ipack: Update e-mail address 2016-05-18 15:04:27 +03:00
ipmi ipmi: introduce a struct ipmi_sdr_compact 2016-02-06 20:44:09 +02:00
isa hw: clean up hw/hw.h includes 2016-05-19 16:42:30 +02:00
kvm
lm32
m68k m68k: include cpu-qom.h in files that require M68KCPU 2016-05-19 16:42:27 +02:00
mem pc-dimm: correct comment of MemoryHotplugState 2016-05-20 14:28:52 -03:00
mips mips: use MIPSCPU instead of CPUMIPSState 2016-05-19 16:42:27 +02:00
misc i.MX: Add i.MX6 System Reset Controller device. 2016-05-12 13:22:28 +01:00
net i.MX: Add FEC Ethernet Emulator 2015-09-07 10:39:30 +01:00
nvram Sort the fw_cfg file list 2016-04-07 19:57:33 +03:00
pci hw/pci/pci.h: Don't include qemu-common.h 2016-03-22 22:20:16 +01:00
pci-host spapr_pci: Remove finish_realize hook 2016-03-16 09:55:11 +11:00
ppc hw: cannot include hw/hw.h from user emulation 2016-05-19 16:42:28 +02:00
s390x s390x: reorganize CSS bits between cpu.h and other headers 2016-05-19 16:42:28 +02:00
scsi Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
sd qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
sh4 sh4: include cpu-qom.h in files that require SuperHCPU 2016-05-19 16:42:27 +02:00
smbios smbios: fix typo 2016-05-18 15:04:27 +03:00
sparc
ssi i.MX: Add the Freescale SPI Controller 2016-05-12 13:22:29 +01:00
timer Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
tricore
unicore32
usb
vfio memory: Fix IOMMU replay base address 2016-05-26 11:12:08 -06:00
virtio rng: rename RndRandom to RndRandom 2016-05-24 11:38:22 +01:00
watchdog s390x/watchdog: introduce diag288 watchdog device 2015-06-11 17:45:49 +02:00
xen xen: add pvUSB backend 2016-05-23 13:30:03 +02:00
boards.h machine: add properties to compat_props incrementaly 2016-05-20 14:28:54 -03:00
bt.h bt: check struct sizes 2015-12-04 09:39:55 +03:00
compat.h s390x: add compat machine for 2.7 2016-05-17 15:50:29 +02:00
devices.h
elf_ops.h loader: Add data swap option to load-elf 2016-03-04 11:30:21 +00:00
empty_slot.h
fw-path-provider.h
hotplug.h Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
hw.h hw: clean up hw/hw.h includes 2016-05-19 16:42:30 +02:00
ide.h
irq.h
loader.h Sort the fw_cfg file list 2016-04-07 19:57:33 +03:00
nmi.h nmi: remove x86 specific nmi handling 2016-05-23 16:53:46 +02:00
pcmcia.h
platform-bus.h
ptimer.h
qdev-core.h Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
qdev-dma.h
qdev-properties.h qdev: New DEFINE_PROP_ON_OFF_AUTO 2016-03-21 21:29:02 +01:00
qdev.h
stream.h
sysbus.h hw: remove pio_addr_t 2016-05-19 16:42:30 +02:00
usb.h include/qemu/iov.h: Don't include qemu-common.h 2016-03-22 22:20:16 +01:00