[PATCH 0/8] iommu/amd: Introduce Nested Translation support

Suravee Suthikulpanit posted 8 patches 1 month, 2 weeks ago
There is a newer version of this series
drivers/iommu/amd/Makefile          |   2 +-
drivers/iommu/amd/amd_iommu.h       |   9 ++
drivers/iommu/amd/amd_iommu_types.h |  12 +++
drivers/iommu/amd/init.c            |   3 +
drivers/iommu/amd/iommu.c           | 134 ++++++++++++++++++------
drivers/iommu/amd/nested.c          | 153 ++++++++++++++++++++++++++++
include/uapi/linux/iommufd.h        |  11 ++
7 files changed, 290 insertions(+), 34 deletions(-)
create mode 100644 drivers/iommu/amd/nested.c
[PATCH 0/8] iommu/amd: Introduce Nested Translation support
Posted by Suravee Suthikulpanit 1 month, 2 weeks ago
This series introduces support for AMD IOMMU nested page table translation
with the host (v1) and guest (v2) page tables. In this mode, the AMD IOMMU
driver configures the Device Table Entry (DTE) with host page table
root pointer and Guest CR3 (GCR3) root pointer along with other related
paremeters.

The host table is configured by allocating domain with page table type
IOMMU_HWPT_ALLOC_NEST_PARENT. The guest table is configured by the
amd_iommu_domain_alloc_nested() and amd_iommu_nested_attach_device()
using GPA of the GCR3 root pointer and GIOV, GLX, GuestPagingMode
parametetrs from guest.

Thanks,
Suravee

Suravee Suthikulpanit (8):
  iommu/amd: Make amd_iommu_pdom_id_alloc() non-static
  iommu/amd: Making device attach / detach helpers non-static
  iommu/amd: Making amd_iommu_pdev_enable_cap_ats non-static
  iommu/amd: Introduce struct gcr3_tbl_info.giov
  iommufd: Introduce data struct for AMD nested domain allocation
  iommu/amd: Add support for nest parent domain allocation
  iommu/amd: Add support for nested domain allocation
  iommu/amd: Add support for nested domain attach/detach

 drivers/iommu/amd/Makefile          |   2 +-
 drivers/iommu/amd/amd_iommu.h       |   9 ++
 drivers/iommu/amd/amd_iommu_types.h |  12 +++
 drivers/iommu/amd/init.c            |   3 +
 drivers/iommu/amd/iommu.c           | 134 ++++++++++++++++++------
 drivers/iommu/amd/nested.c          | 153 ++++++++++++++++++++++++++++
 include/uapi/linux/iommufd.h        |  11 ++
 7 files changed, 290 insertions(+), 34 deletions(-)
 create mode 100644 drivers/iommu/amd/nested.c

-- 
2.34.1