Re: [RFC PATCH v1 04/15] iommu: Add DOMAIN_ATTR_PTBASE

From: Jordan Crouse
Date: Mon Mar 18 2019 - 10:19:21 EST


On Mon, Mar 18, 2019 at 10:53:21AM +0100, Joerg Roedel wrote:
> On Fri, Mar 01, 2019 at 12:38:26PM -0700, Jordan Crouse wrote:
> > Add an attribute to return the base address of the pagetable. This is used
> > by auxiliary domains from arm-smmu to return the address of the pagetable
> > to the leaf driver so that it can set the appropriate pagetable through
> > it's own means.
>
> What is this going to be used for? Page-table management is supposed to
> happen in the arm-smmu driver and the gpu driver only makes changes
> through iommu_map/iommu_unmap calls.

Adreno GPUs can an internal mechanism to switch the pagetable address in the
attached arm-smmu v2 IOMMU so that each individual rendering process can have
their own pagetable. The driver uses iommu_map and iommu_unmap to write
the pagetable but the address for each individual pagetable needs to be queried
so it can be sent to the hardware. You can see the driver specific code that
does this here:

https://patchwork.freedesktop.org/patch/289507/?series=57441&rev=1

Jordan

--
The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project