Files
kernel_arpi/include/uapi/linux
Alexey Kardashevskiy e633bc86a9 vfio: powerpc/spapr: Support Dynamic DMA windows
This adds create/remove window ioctls to create and remove DMA windows.
sPAPR defines a Dynamic DMA windows capability which allows
para-virtualized guests to create additional DMA windows on a PCI bus.
The existing linux kernels use this new window to map the entire guest
memory and switch to the direct DMA operations saving time on map/unmap
requests which would normally happen in a big amounts.

This adds 2 ioctl handlers - VFIO_IOMMU_SPAPR_TCE_CREATE and
VFIO_IOMMU_SPAPR_TCE_REMOVE - to create and remove windows.
Up to 2 windows are supported now by the hardware and by this driver.

This changes VFIO_IOMMU_SPAPR_TCE_GET_INFO handler to return additional
information such as a number of supported windows and maximum number
levels of TCE tables.

DDW is added as a capability, not as a SPAPR TCE IOMMU v2 unique feature
as we still want to support v2 on platforms which cannot do DDW for
the sake of TCE acceleration in KVM (coming soon).

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
[aw: for the vfio related changes]
Acked-by: Alex Williamson <alex.williamson@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2015-06-11 15:16:55 +10:00
..
2014-10-20 10:30:15 +08:00
2014-09-23 23:15:46 -07:00
2015-02-14 17:05:03 +00:00
2015-04-21 16:16:02 -04:00
2015-02-23 09:59:07 -06:00
2015-03-06 21:50:02 -05:00
2014-11-19 14:48:02 -06:00
2014-12-08 12:55:57 +08:00
2014-08-08 15:57:31 -07:00
2015-04-12 21:25:13 -04:00
2014-12-16 11:19:42 -05:00
2014-12-22 16:12:36 -05:00
2015-01-05 22:44:46 -05:00
2015-02-09 16:59:03 +09:00
2014-12-02 13:52:53 -07:00
2015-02-17 14:34:51 -08:00
2015-02-03 12:48:40 -05:00
2014-08-08 15:57:31 -07:00
2015-01-20 13:51:06 +01:00
2014-12-13 12:42:52 -08:00
2015-02-02 18:46:51 -08:00
2015-04-23 15:16:14 -04:00
2015-04-07 17:29:41 -04:00
2015-02-07 18:43:16 +08:00
2014-12-10 17:41:10 -08:00
2014-12-09 14:10:41 +08:00
2015-03-05 22:08:42 -05:00
2015-03-29 12:13:52 +10:30
2015-03-29 12:13:52 +10:30
2014-12-09 12:05:24 +02:00
2015-03-31 13:58:35 -04:00