Lines Matching refs:l1_desc

925 					struct arm_smmu_l1_ctx_desc *l1_desc)  in arm_smmu_alloc_cd_leaf_table()  argument
929 l1_desc->l2ptr = dmam_alloc_coherent(smmu->dev, size, in arm_smmu_alloc_cd_leaf_table()
930 &l1_desc->l2ptr_dma, GFP_KERNEL); in arm_smmu_alloc_cd_leaf_table()
931 if (!l1_desc->l2ptr) { in arm_smmu_alloc_cd_leaf_table()
940 struct arm_smmu_l1_ctx_desc *l1_desc) in arm_smmu_write_cd_l1_desc() argument
942 u64 val = (l1_desc->l2ptr_dma & CTXDESC_L1_DESC_L2PTR_MASK) | in arm_smmu_write_cd_l1_desc()
954 struct arm_smmu_l1_ctx_desc *l1_desc; in arm_smmu_get_cd_ptr() local
962 l1_desc = &cdcfg->l1_desc[idx]; in arm_smmu_get_cd_ptr()
963 if (!l1_desc->l2ptr) { in arm_smmu_get_cd_ptr()
964 if (arm_smmu_alloc_cd_leaf_table(smmu, l1_desc)) in arm_smmu_get_cd_ptr()
968 arm_smmu_write_cd_l1_desc(l1ptr, l1_desc); in arm_smmu_get_cd_ptr()
973 return l1_desc->l2ptr + idx * CTXDESC_CD_DWORDS; in arm_smmu_get_cd_ptr()
1075 cdcfg->l1_desc = devm_kcalloc(smmu->dev, cdcfg->num_l1_ents, in arm_smmu_alloc_cd_tables()
1076 sizeof(*cdcfg->l1_desc), in arm_smmu_alloc_cd_tables()
1078 if (!cdcfg->l1_desc) in arm_smmu_alloc_cd_tables()
1095 if (cdcfg->l1_desc) { in arm_smmu_alloc_cd_tables()
1096 devm_kfree(smmu->dev, cdcfg->l1_desc); in arm_smmu_alloc_cd_tables()
1097 cdcfg->l1_desc = NULL; in arm_smmu_alloc_cd_tables()
1109 if (cdcfg->l1_desc) { in arm_smmu_free_cd_tables()
1113 if (!cdcfg->l1_desc[i].l2ptr) in arm_smmu_free_cd_tables()
1117 cdcfg->l1_desc[i].l2ptr, in arm_smmu_free_cd_tables()
1118 cdcfg->l1_desc[i].l2ptr_dma); in arm_smmu_free_cd_tables()
1120 devm_kfree(smmu->dev, cdcfg->l1_desc); in arm_smmu_free_cd_tables()
1121 cdcfg->l1_desc = NULL; in arm_smmu_free_cd_tables()
1330 struct arm_smmu_strtab_l1_desc *desc = &cfg->l1_desc[sid >> STRTAB_SPLIT]; in arm_smmu_init_l2_strtab()
2003 struct arm_smmu_strtab_l1_desc *l1_desc; in arm_smmu_get_step_for_sid() local
2008 l1_desc = &cfg->l1_desc[idx]; in arm_smmu_get_step_for_sid()
2010 step = &l1_desc->l2ptr[idx]; in arm_smmu_get_step_for_sid()
2695 size_t size = sizeof(*cfg->l1_desc) * cfg->num_l1_ents; in arm_smmu_init_l1_strtab()
2698 cfg->l1_desc = devm_kzalloc(smmu->dev, size, GFP_KERNEL); in arm_smmu_init_l1_strtab()
2699 if (!cfg->l1_desc) { in arm_smmu_init_l1_strtab()
2705 arm_smmu_write_strtab_l1_desc(strtab, &cfg->l1_desc[i]); in arm_smmu_init_l1_strtab()