drm/msm: Add private interface for adreno-smmu
authorRob Clark <robdclark@chromium.org>
Mon, 17 Aug 2020 22:01:30 +0000 (15:01 -0700)
committerRob Clark <robdclark@chromium.org>
Sat, 12 Sep 2020 17:45:56 +0000 (10:45 -0700)
commit2fc7b1561fbe502f7a08f3df7e0d0cecee985966
tree758e17048852fdf25f1b30e975f68c5f7c94f5d3
parenta3367f5ffe9a49d1184815be7b841c9d11ec7bce
drm/msm: Add private interface for adreno-smmu

This interface will be used for drm/msm to coordinate with the
qcom_adreno_smmu_impl to enable/disable TTBR0 translation.

Once TTBR0 translation is enabled, the GPU's CP (Command Processor)
will directly switch TTBR0 pgtables (and do the necessary TLB inv)
synchronized to the GPU's operation.  But help from the SMMU driver
is needed to initially bootstrap TTBR0 translation, which cannot be
done from the GPU.

Since this is a very special case, a private interface is used to
avoid adding highly driver specific things to the public iommu
interface.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Jordan Crouse <jcrouse@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
include/linux/adreno-smmu-priv.h [new file with mode: 0644]