• Linus Torvalds's avatar
    Merge git://git.infradead.org/intel-iommu · ab1228e4
    Linus Torvalds authored
    Pull intel iommu updates from David Woodhouse:
     "This adds "Shared Virtual Memory" (aka PASID support) for the Intel
      IOMMU.  This allows devices to do DMA using process address space,
      translated through the normal CPU page tables for the relevant mm.
    
      With corresponding support added to the i915 driver, this has been
      tested with the graphics device on Skylake.  We don't have the
      required TLP support in our PCIe root ports for supporting discrete
      devices yet, so it's only integrated devices that can do it so far"
    
    * git://git.infradead.org/intel-iommu: (23 commits)
      iommu/vt-d: Fix rwxp flags in SVM device fault callback
      iommu/vt-d: Expose struct svm_dev_ops without CONFIG_INTEL_IOMMU_SVM
      iommu/vt-d: Clean up pasid_enabled() and ecs_enabled() dependencies
      iommu/vt-d: Handle Caching Mode implementations of SVM
      iommu/vt-d: Fix SVM IOTLB flush handling
      iommu/vt-d: Use dev_err(..) in intel_svm_device_to_iommu(..)
      iommu/vt-d: fix a loop in prq_event_thread()
      iommu/vt-d: Fix IOTLB flushing for global pages
      iommu/vt-d: Fix address shifting in page request handler
      iommu/vt-d: shift wrapping bug in prq_event_thread()
      iommu/vt-d: Fix NULL pointer dereference in page request error case
      iommu/vt-d: Implement SVM_FLAG_SUPERVISOR_MODE for kernel access
      iommu/vt-d: Implement SVM_FLAG_PRIVATE_PASID to allocate unique PASIDs
      iommu/vt-d: Add callback to device driver on page faults
      iommu/vt-d: Implement page request handling
      iommu/vt-d: Generalise DMAR MSI setup to allow for page request events
      iommu/vt-d: Implement deferred invalidate for SVM
      iommu/vt-d: Add basic SVM PASID support
      iommu/vt-d: Always enable PASID/PRI PCI capabilities before ATS
      iommu/vt-d: Add initial support for PASID tables
      ...
    ab1228e4
Kconfig 10.8 KB