Register the Shikra MDSS display subsystem in both the SMMU ACTLR
client table (for TLB prefetch tuning) and the SMMU client match table.

Shikra MDSS uses qcom,shikra-mdss as its sole compatible string, so
explicit entries are required — there is no fallback to qcom,qcm2290-mdss
to fall back on. The prefetch settings mirror qcm2290-mdss
(PREFETCH_SHALLOW | CPRE | CMTLB) as Shikra shares the same display
hardware block.

No entry is needed in qcom_smmu_impl_of_match: Shikra's apps_smmu
carries qcom,smmu-500 as a fallback and is covered by the catch-all
entry there.

Signed-off-by: Nabige Aala <[email protected]>
---
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c 
b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
index e2c914fccd6f..3dfee947e2c9 100644
--- a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
+++ b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
@@ -45,6 +45,8 @@ static const struct of_device_id 
qcom_smmu_actlr_client_of_match[] = {
                        .data = (const void *) (PREFETCH_DEFAULT | CMTLB) },
        { .compatible = "qcom,qcm2290-mdss",
                        .data = (const void *) (PREFETCH_SHALLOW | CPRE | 
CMTLB) },
+       { .compatible = "qcom,shikra-mdss",
+                       .data = (const void *) (PREFETCH_SHALLOW | CPRE | 
CMTLB) },
        { .compatible = "qcom,sa8775p-mdss",
                        .data = (const void *) (PREFETCH_DEFAULT | CMTLB) },
        { .compatible = "qcom,sc7280-mdss",
@@ -410,6 +412,7 @@ static const struct of_device_id 
qcom_smmu_client_of_match[] __maybe_unused = {
        { .compatible = "qcom,mdp4" },
        { .compatible = "qcom,mdss" },
        { .compatible = "qcom,qcm2290-mdss" },
+       { .compatible = "qcom,shikra-mdss" },
        { .compatible = "qcom,sar2130p-mdss" },
        { .compatible = "qcom,sc7180-mdss" },
        { .compatible = "qcom,sc7180-mss-pil" },

-- 
2.34.1

Reply via email to