iommu/arm-smmu: Prepare for the adreno-smmu implementation
authorJordan Crouse <jcrouse@codeaurora.org>
Sat, 5 Sep 2020 20:04:20 +0000 (13:04 -0700)
committerWill Deacon <will@kernel.org>
Mon, 21 Sep 2020 21:14:05 +0000 (22:14 +0100)
commit556db53a71e0e0bcfb30b4d8e4fdd7bb49951b99
tree17257c74f6faed74056c2564bb4cdc16cd8826e9
parent67f1a7a314a2c29832ae604f839653408492ee5d
iommu/arm-smmu: Prepare for the adreno-smmu implementation

Do a bit of prep work to add the upcoming adreno-smmu implementation.

Add an hook to allow the implementation to choose which context banks
to allocate.

Move some of the common structs to arm-smmu.h in anticipation of them
being used by the implementations and update some of the existing hooks
to pass more information that the implementation will need.

These modifications will be used by the upcoming Adreno SMMU
implementation to identify the GPU device and properly configure it
for pagetable switching.

Co-developed-by: Rob Clark <robdclark@chromium.org>
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm/arm-smmu/arm-smmu-impl.c
drivers/iommu/arm/arm-smmu/arm-smmu.c
drivers/iommu/arm/arm-smmu/arm-smmu.h