Lines Matching defs:asid
57 struct qcom_iommu_ctx *ctxs[]; /* indexed by asid-1 */
64 u8 asid; /* asid and ctx bank # are 1:1 */
94 static struct qcom_iommu_ctx * to_ctx(struct qcom_iommu_domain *d, unsigned asid)
99 return qcom_iommu->ctxs[asid - 1];
153 iommu_writel(ctx, ARM_SMMU_CB_S1_TLBIASID, ctx->asid);
173 iova |= ctx->asid;
227 fsr, iova, fsynr, ctx->asid);
278 ret = qcom_scm_restore_sec_cfg(qcom_iommu->sec_id, ctx->asid);
296 FIELD_PREP(ARM_SMMU_TTBRn_ASID, ctx->asid));
574 unsigned asid = args->args[0];
589 /* make sure the asid specified in dt is valid, so we don't have
590 * to sanity check this elsewhere, since 'asid - 1' is used to
593 if (WARN_ON(asid < 1) ||
594 WARN_ON(asid > qcom_iommu->num_ctxs)) {
612 return iommu_fwspec_add_ids(dev, &asid, 1);
683 * of the context bank, and calculate the asid from that:
736 ctx->asid = ret;
738 dev_dbg(dev, "found asid %u\n", ctx->asid);
740 qcom_iommu->ctxs[ctx->asid - 1] = ctx;
752 qcom_iommu->ctxs[ctx->asid - 1] = NULL;
795 /* find the max asid (which is 1:1 to ctx bank idx), so we know how