[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f28359ed-47dc-281f-7261-6320150ef906@amd.com>
Date: Mon, 2 Nov 2020 10:16:20 +0700
From: Suravee Suthikulpanit <suravee.suthikulpanit@....com>
To: linux-kernel@...r.kernel.org, iommu@...ts.linux-foundation.org
Cc: joro@...tes.org, robin.murphy@....com
Subject: Re: [PATCH v3 00/14] iommu/amd: Add Generic IO Page Table Framework
Support
Joerg,
You mentioned to remind you to pull this in to linux-next.
Thanks,
Suravee
On 10/4/20 8:45 AM, Suravee Suthikulpanit wrote:
> The framework allows callable implementation of IO page table.
> This allows AMD IOMMU driver to switch between different types
> of AMD IOMMU page tables (e.g. v1 vs. v2).
>
> This series refactors the current implementation of AMD IOMMU v1 page table
> to adopt the framework. There should be no functional change.
> Subsequent series will introduce support for the AMD IOMMU v2 page table.
>
> Thanks,
> Suravee
>
> Change from V2 (https://lore.kernel.org/lkml/835c0d46-ed96-9fbe-856a-777dcffac967@amd.com/T/#t)
> - Patch 2/14: Introduce helper function io_pgtable_cfg_to_data.
> - Patch 13/14: Put back the struct iommu_flush_ops since patch v2 would run into
> NULL pointer bug when calling free_io_pgtable_ops if not defined.
>
> Change from V1 (https://lkml.org/lkml/2020/9/23/251)
> - Do not specify struct io_pgtable_cfg.coherent_walk, since it is
> not currently used. (per Robin)
> - Remove unused struct iommu_flush_ops. (patch 2/13)
> - Move amd_iommu_setup_io_pgtable_ops to iommu.c instead of io_pgtable.c
> patch 13/13)
>
> Suravee Suthikulpanit (14):
> iommu/amd: Re-define amd_iommu_domain_encode_pgtable as inline
> iommu/amd: Prepare for generic IO page table framework
> iommu/amd: Move pt_root to to struct amd_io_pgtable
> iommu/amd: Convert to using amd_io_pgtable
> iommu/amd: Declare functions as extern
> iommu/amd: Move IO page table related functions
> iommu/amd: Restructure code for freeing page table
> iommu/amd: Remove amd_iommu_domain_get_pgtable
> iommu/amd: Rename variables to be consistent with struct
> io_pgtable_ops
> iommu/amd: Refactor fetch_pte to use struct amd_io_pgtable
> iommu/amd: Introduce iommu_v1_iova_to_phys
> iommu/amd: Introduce iommu_v1_map_page and iommu_v1_unmap_page
> iommu/amd: Introduce IOMMU flush callbacks
> iommu/amd: Adopt IO page table framework
>
> drivers/iommu/amd/Kconfig | 1 +
> drivers/iommu/amd/Makefile | 2 +-
> drivers/iommu/amd/amd_iommu.h | 22 +
> drivers/iommu/amd/amd_iommu_types.h | 43 +-
> drivers/iommu/amd/io_pgtable.c | 564 ++++++++++++++++++++++++
> drivers/iommu/amd/iommu.c | 646 +++-------------------------
> drivers/iommu/io-pgtable.c | 3 +
> include/linux/io-pgtable.h | 2 +
> 8 files changed, 691 insertions(+), 592 deletions(-)
> create mode 100644 drivers/iommu/amd/io_pgtable.c
>
Powered by blists - more mailing lists