iommu/arm-smmu: Use Tegra implementation on Tegra186
authorThierry Reding <treding@nvidia.com>
Thu, 3 Jun 2021 16:46:29 +0000 (18:46 +0200)
committerKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Fri, 11 Jun 2021 06:44:53 +0000 (08:44 +0200)
Tegra186 requires the same SID override programming as Tegra194 in order
to seamlessly transition from the firmware framebuffer to the Linux
framebuffer, so the Tegra implementation needs to be used on Tegra186
devices as well.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20210603164632.1000458-7-thierry.reding@gmail.com
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
drivers/iommu/arm/arm-smmu/arm-smmu-impl.c

index 136872e..9f465e1 100644 (file)
@@ -211,7 +211,8 @@ struct arm_smmu_device *arm_smmu_impl_init(struct arm_smmu_device *smmu)
        if (of_property_read_bool(np, "calxeda,smmu-secure-config-access"))
                smmu->impl = &calxeda_impl;
 
-       if (of_device_is_compatible(np, "nvidia,tegra194-smmu"))
+       if (of_device_is_compatible(np, "nvidia,tegra194-smmu") ||
+           of_device_is_compatible(np, "nvidia,tegra186-smmu"))
                return nvidia_smmu_impl_init(smmu);
 
        smmu = qcom_smmu_impl_init(smmu);