iommu/mediatek: Add support for MT8167
authorFabien Parent <fparent@baylibre.com>
Mon, 7 Sep 2020 10:16:49 +0000 (12:16 +0200)
committerJoerg Roedel <jroedel@suse.de>
Fri, 18 Sep 2020 08:29:12 +0000 (10:29 +0200)
Add support for the IOMMU on MT8167

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Reviewed-by: Yong Wu <yong.wu@mediatek.com>
Link: https://lore.kernel.org/r/20200907101649.1573134-3-fparent@baylibre.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/mtk_iommu.c
drivers/iommu/mtk_iommu.h

index 655afcb..c072cee 100644 (file)
@@ -840,6 +840,13 @@ static const struct mtk_iommu_plat_data mt6779_data = {
        .larbid_remap  = {{0}, {1}, {2}, {3}, {5}, {7, 8}, {10}, {9}},
 };
 
+static const struct mtk_iommu_plat_data mt8167_data = {
+       .m4u_plat     = M4U_MT8167,
+       .flags        = RESET_AXI | HAS_LEGACY_IVRP_PADDR,
+       .inv_sel_reg  = REG_MMU_INV_SEL_GEN1,
+       .larbid_remap = {{0}, {1}, {2}}, /* Linear mapping. */
+};
+
 static const struct mtk_iommu_plat_data mt8173_data = {
        .m4u_plat     = M4U_MT8173,
        .flags        = HAS_4GB_MODE | HAS_BCLK | RESET_AXI |
@@ -858,6 +865,7 @@ static const struct mtk_iommu_plat_data mt8183_data = {
 static const struct of_device_id mtk_iommu_of_ids[] = {
        { .compatible = "mediatek,mt2712-m4u", .data = &mt2712_data},
        { .compatible = "mediatek,mt6779-m4u", .data = &mt6779_data},
+       { .compatible = "mediatek,mt8167-m4u", .data = &mt8167_data},
        { .compatible = "mediatek,mt8173-m4u", .data = &mt8173_data},
        { .compatible = "mediatek,mt8183-m4u", .data = &mt8183_data},
        {}
index 122925d..df32b3e 100644 (file)
@@ -39,6 +39,7 @@ enum mtk_iommu_plat {
        M4U_MT2701,
        M4U_MT2712,
        M4U_MT6779,
+       M4U_MT8167,
        M4U_MT8173,
        M4U_MT8183,
 };