Lines Matching refs:plat_data

228 	const struct mtk_iommu_plat_data *plat_data;  member
341 writel_relaxed(F_INVLD_EN1 | F_INVLD_EN0, base + data->plat_data->inv_sel_reg); in mtk_iommu_tlb_flush_all()
375 check_pm_status = !MTK_IOMMU_HAS_FLAG(data->plat_data, PM_CLK_AO); in mtk_iommu_tlb_flush_range_sync()
387 base + data->plat_data->inv_sel_reg); in mtk_iommu_tlb_flush_range_sync()
420 const struct mtk_iommu_plat_data *plat_data = data->plat_data; in mtk_iommu_isr() local
438 if (MTK_IOMMU_HAS_FLAG(plat_data, IOVA_34_EN)) { in mtk_iommu_isr()
446 if (MTK_IOMMU_IS_TYPE(plat_data, MTK_IOMMU_TYPE_MM)) { in mtk_iommu_isr()
447 if (MTK_IOMMU_HAS_FLAG(plat_data, HAS_SUB_COMM_2BITS)) { in mtk_iommu_isr()
451 } else if (MTK_IOMMU_HAS_FLAG(plat_data, HAS_SUB_COMM_3BITS)) { in mtk_iommu_isr()
455 } else if (MTK_IOMMU_HAS_FLAG(plat_data, INT_ID_PORT_WIDTH_6)) { in mtk_iommu_isr()
462 fault_larb = data->plat_data->larbid_remap[fault_larb][sub_comm]; in mtk_iommu_isr()
485 const struct mtk_iommu_plat_data *plat_data) in mtk_iommu_get_bank_id() argument
490 if (plat_data->banks_num == 1) in mtk_iommu_get_bank_id()
496 for (i = 0; i < plat_data->banks_num && i < MTK_IOMMU_BANK_MAX; i++) { in mtk_iommu_get_bank_id()
497 if (!plat_data->banks_enable[i]) in mtk_iommu_get_bank_id()
500 if (portmsk & plat_data->banks_portmsk[i]) { in mtk_iommu_get_bank_id()
509 const struct mtk_iommu_plat_data *plat_data) in mtk_iommu_get_iova_region_id() argument
511 const struct mtk_iommu_iova_region *rgn = plat_data->iova_region; in mtk_iommu_get_iova_region_id()
516 if (!dma_rgn || plat_data->iova_region_nr == 1) in mtk_iommu_get_iova_region_id()
520 for (i = 0; i < plat_data->iova_region_nr; i++, rgn++) { in mtk_iommu_get_iova_region_id()
552 if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_MM)) { in mtk_iommu_config()
555 region = data->plat_data->iova_region + regionid; in mtk_iommu_config()
566 } else if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_INFRA)) { in mtk_iommu_config()
605 .ias = MTK_IOMMU_HAS_FLAG(data->plat_data, IOVA_34_EN) ? 34 : 32, in mtk_iommu_domain_finalise()
609 if (MTK_IOMMU_HAS_FLAG(data->plat_data, PGTABLE_PA_35_EN)) in mtk_iommu_domain_finalise()
612 if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) in mtk_iommu_domain_finalise()
628 region = data->plat_data->iova_region + region_id; in mtk_iommu_domain_finalise()
666 region_id = mtk_iommu_get_iova_region_id(dev, data->plat_data); in mtk_iommu_attach_device()
670 bankid = mtk_iommu_get_bank_id(dev, data->plat_data); in mtk_iommu_attach_device()
789 if (!MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_MM)) in mtk_iommu_probe_device()
828 if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_MM)) { in mtk_iommu_release_device()
835 static int mtk_iommu_get_group_id(struct device *dev, const struct mtk_iommu_plat_data *plat_data) in mtk_iommu_get_group_id() argument
843 bankid = mtk_iommu_get_bank_id(dev, plat_data); in mtk_iommu_get_group_id()
847 return mtk_iommu_get_iova_region_id(dev, plat_data); in mtk_iommu_get_group_id()
861 groupid = mtk_iommu_get_group_id(dev, data->plat_data); in mtk_iommu_device_group()
904 unsigned int regionid = mtk_iommu_get_iova_region_id(dev, data->plat_data), i; in mtk_iommu_get_resv_regions()
911 curdom = data->plat_data->iova_region + regionid; in mtk_iommu_get_resv_regions()
912 for (i = 0; i < data->plat_data->iova_region_nr; i++) { in mtk_iommu_get_resv_regions()
913 resv = data->plat_data->iova_region + i; in mtk_iommu_get_resv_regions()
961 if (MTK_IOMMU_HAS_FLAG(data->plat_data, TF_PORT_TO_ADDR_MT8173)) { in mtk_iommu_hw_init()
971 MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_VLD_PA_RNG)) { in mtk_iommu_hw_init()
979 if (MTK_IOMMU_HAS_FLAG(data->plat_data, DCM_DISABLE)) in mtk_iommu_hw_init()
984 if (MTK_IOMMU_HAS_FLAG(data->plat_data, WR_THROT_EN)) { in mtk_iommu_hw_init()
991 if (MTK_IOMMU_HAS_FLAG(data->plat_data, RESET_AXI)) { in mtk_iommu_hw_init()
996 if (!MTK_IOMMU_HAS_FLAG(data->plat_data, STD_AXI_MODE)) in mtk_iommu_hw_init()
998 if (MTK_IOMMU_HAS_FLAG(data->plat_data, OUT_ORDER_WR_EN)) in mtk_iommu_hw_init()
1021 if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_LEGACY_IVRP_PADDR)) in mtk_iommu_hw_init()
1181 data->plat_data = of_device_get_match_data(dev); in mtk_iommu_probe()
1189 if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) { in mtk_iommu_probe()
1200 switch (data->plat_data->m4u_plat) { in mtk_iommu_probe()
1222 banks_num = data->plat_data->banks_num; in mtk_iommu_probe()
1240 if (!data->plat_data->banks_enable[i]) in mtk_iommu_probe()
1255 if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_BCLK)) { in mtk_iommu_probe()
1263 if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_MM)) { in mtk_iommu_probe()
1269 } else if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_INFRA)) { in mtk_iommu_probe()
1270 p = data->plat_data->pericfg_comp_str; in mtk_iommu_probe()
1290 if (MTK_IOMMU_HAS_FLAG(data->plat_data, SHARE_PGTABLE)) { in mtk_iommu_probe()
1291 list_add_tail(&data->list, data->plat_data->hw_list); in mtk_iommu_probe()
1292 data->hw_list = data->plat_data->hw_list; in mtk_iommu_probe()
1299 if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_MM)) { in mtk_iommu_probe()
1312 if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_MM)) in mtk_iommu_probe()
1330 if (MTK_IOMMU_IS_TYPE(data->plat_data, MTK_IOMMU_TYPE_MM)) { in mtk_iommu_remove()
1335 for (i = 0; i < data->plat_data->banks_num; i++) { in mtk_iommu_remove()
1358 if (!data->plat_data->banks_enable[i]) in mtk_iommu_runtime_suspend()
1364 } while (++i < data->plat_data->banks_num); in mtk_iommu_runtime_suspend()
1398 if (!data->plat_data->banks_enable[i] || !m4u_dom) in mtk_iommu_runtime_resume()
1405 } while (++i < data->plat_data->banks_num); in mtk_iommu_runtime_resume()