Searched refs:smmu_domain (Results 1 – 8 of 8) sorted by relevance
| /OK3568_Linux_fs/kernel/drivers/iommu/arm/arm-smmu/ |
| H A D | arm-smmu.c | 245 static void arm_smmu_tlb_sync_context(struct arm_smmu_domain *smmu_domain) in arm_smmu_tlb_sync_context() argument 247 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_sync_context() 250 spin_lock_irqsave(&smmu_domain->cb_lock, flags); in arm_smmu_tlb_sync_context() 251 __arm_smmu_tlb_sync(smmu, ARM_SMMU_CB(smmu, smmu_domain->cfg.cbndx), in arm_smmu_tlb_sync_context() 253 spin_unlock_irqrestore(&smmu_domain->cb_lock, flags); in arm_smmu_tlb_sync_context() 258 struct arm_smmu_domain *smmu_domain = cookie; in arm_smmu_tlb_inv_context_s1() local 264 arm_smmu_cb_write(smmu_domain->smmu, smmu_domain->cfg.cbndx, in arm_smmu_tlb_inv_context_s1() 265 ARM_SMMU_CB_S1_TLBIASID, smmu_domain->cfg.asid); in arm_smmu_tlb_inv_context_s1() 266 arm_smmu_tlb_sync_context(smmu_domain); in arm_smmu_tlb_inv_context_s1() 271 struct arm_smmu_domain *smmu_domain = cookie; in arm_smmu_tlb_inv_context_s2() local [all …]
|
| H A D | arm-smmu-qcom.c | 80 struct arm_smmu_domain *smmu_domain = (void *)cookie; in qcom_adreno_smmu_get_ttbr1_cfg() local 82 io_pgtable_ops_to_pgtable(smmu_domain->pgtbl_ops); in qcom_adreno_smmu_get_ttbr1_cfg() 95 struct arm_smmu_domain *smmu_domain = (void *)cookie; in qcom_adreno_smmu_set_ttbr0_cfg() local 96 struct io_pgtable *pgtable = io_pgtable_ops_to_pgtable(smmu_domain->pgtbl_ops); in qcom_adreno_smmu_set_ttbr0_cfg() 97 struct arm_smmu_cfg *cfg = &smmu_domain->cfg; in qcom_adreno_smmu_set_ttbr0_cfg() 98 struct arm_smmu_cb *cb = &smmu_domain->smmu->cbs[cfg->cbndx]; in qcom_adreno_smmu_set_ttbr0_cfg() 128 arm_smmu_write_context_bank(smmu_domain->smmu, cb->cfg->cbndx); in qcom_adreno_smmu_set_ttbr0_cfg() 133 static int qcom_adreno_smmu_alloc_context_bank(struct arm_smmu_domain *smmu_domain, in qcom_adreno_smmu_alloc_context_bank() argument 154 static int qcom_adreno_smmu_init_context(struct arm_smmu_domain *smmu_domain, in qcom_adreno_smmu_init_context() argument 168 if ((smmu_domain->stage == ARM_SMMU_DOMAIN_S1) && in qcom_adreno_smmu_init_context() [all …]
|
| H A D | arm-smmu-impl.c | 71 static int cavium_init_context(struct arm_smmu_domain *smmu_domain, in cavium_init_context() argument 74 struct cavium_smmu *cs = container_of(smmu_domain->smmu, in cavium_init_context() 77 if (smmu_domain->stage == ARM_SMMU_DOMAIN_S2) in cavium_init_context() 78 smmu_domain->cfg.vmid += cs->id_base; in cavium_init_context() 80 smmu_domain->cfg.asid += cs->id_base; in cavium_init_context()
|
| H A D | arm-smmu-nvidia.c | 204 struct arm_smmu_domain *smmu_domain; in nvidia_smmu_context_fault() local 206 smmu_domain = container_of(domain, struct arm_smmu_domain, domain); in nvidia_smmu_context_fault() 207 smmu = smmu_domain->smmu; in nvidia_smmu_context_fault()
|
| H A D | arm-smmu.h | 429 int (*init_context)(struct arm_smmu_domain *smmu_domain, 436 int (*alloc_context_bank)(struct arm_smmu_domain *smmu_domain,
|
| /OK3568_Linux_fs/kernel/drivers/iommu/arm/arm-smmu-v3/ |
| H A D | arm-smmu-v3.c | 896 static void arm_smmu_sync_cd(struct arm_smmu_domain *smmu_domain, in arm_smmu_sync_cd() argument 903 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_sync_cd() 912 spin_lock_irqsave(&smmu_domain->devices_lock, flags); in arm_smmu_sync_cd() 913 list_for_each_entry(master, &smmu_domain->devices, domain_head) { in arm_smmu_sync_cd() 919 spin_unlock_irqrestore(&smmu_domain->devices_lock, flags); in arm_smmu_sync_cd() 949 static __le64 *arm_smmu_get_cd_ptr(struct arm_smmu_domain *smmu_domain, in arm_smmu_get_cd_ptr() argument 955 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_get_cd_ptr() 956 struct arm_smmu_ctx_desc_cfg *cdcfg = &smmu_domain->s1_cfg.cdcfg; in arm_smmu_get_cd_ptr() 958 if (smmu_domain->s1_cfg.s1fmt == STRTAB_STE_0_S1FMT_LINEAR) in arm_smmu_get_cd_ptr() 970 arm_smmu_sync_cd(smmu_domain, ssid, false); in arm_smmu_get_cd_ptr() [all …]
|
| H A D | arm-smmu-v3-sva.c | 26 struct arm_smmu_domain *smmu_domain; in arm_smmu_share_asid() local 40 smmu_domain = container_of(cd, struct arm_smmu_domain, s1_cfg.cd); in arm_smmu_share_asid() 41 smmu = smmu_domain->smmu; in arm_smmu_share_asid() 58 arm_smmu_write_ctx_desc(smmu_domain, 0, cd); in arm_smmu_share_asid()
|
| H A D | arm-smmu-v3.h | 686 int arm_smmu_write_ctx_desc(struct arm_smmu_domain *smmu_domain, int ssid,
|