/drivers/iommu/intel/ |
D | pasid.c | 558 struct device *dev, pgd_t *pgd, in intel_pasid_setup_first_level() argument 576 pasid_set_flptr(pte, (u64)__pa(pgd)); in intel_pasid_setup_first_level() 617 struct dma_pte **pgd) in iommu_skip_agaw() argument 622 *pgd = phys_to_virt(dma_pte_addr(*pgd)); in iommu_skip_agaw() 623 if (!dma_pte_present(*pgd)) in iommu_skip_agaw() 638 struct dma_pte *pgd; in intel_pasid_setup_second_level() local 653 pgd = domain->pgd; in intel_pasid_setup_second_level() 654 agaw = iommu_skip_agaw(domain, iommu, &pgd); in intel_pasid_setup_second_level() 660 pgd_val = virt_to_phys(pgd); in intel_pasid_setup_second_level() 789 struct dma_pte *pgd; in intel_pasid_setup_nested() local [all …]
|
D | pasid.h | 118 struct device *dev, pgd_t *pgd, 127 struct device *dev, pgd_t *pgd, u32 pasid,
|
D | iommu.c | 1025 BUG_ON(!domain->pgd); in pfn_to_dma_pte() 1031 parent = domain->pgd; in pfn_to_dma_pte() 1086 parent = domain->pgd; in dma_pfn_level_pte() 1197 domain->pgd, 0, start_pfn, last_pfn); in dma_pte_free_pagetable() 1201 free_pgtable_page(domain->pgd); in dma_pte_free_pagetable() 1202 domain->pgd = NULL; in dma_pte_free_pagetable() 1300 domain->pgd, 0, start_pfn, last_pfn, NULL); in domain_unmap() 1304 struct page *pgd_page = virt_to_page(domain->pgd); in domain_unmap() 1308 domain->pgd = NULL; in domain_unmap() 2081 if (domain->pgd) { in domain_exit() [all …]
|
D | svm.c | 594 mm ? mm->pgd : init_mm.pgd, in intel_svm_bind_mm() 621 mm ? mm->pgd : init_mm.pgd, in intel_svm_bind_mm()
|
D | debugfs.c | 352 (u64)virt_to_phys(domain->pgd)); in show_device_domain_translation() 355 pgtable_walk_level(m, domain->pgd, domain->agaw + 2, 0, path); in show_device_domain_translation()
|
/drivers/iommu/ |
D | io-pgtable-arm.c | 152 void *pgd; member 485 arm_lpae_iopte *ptep = data->pgd; in arm_lpae_map_pages() 557 __arm_lpae_free_pgtable(data, data->start_level, data->pgd); in arm_lpae_free_pgtable() 693 arm_lpae_iopte *ptep = data->pgd; in arm_lpae_unmap_pages() 718 arm_lpae_iopte pte, *ptep = data->pgd; in arm_lpae_iova_to_phys() 921 data->pgd = __arm_lpae_alloc_pages(ARM_LPAE_PGD_SIZE(data), in arm_64_lpae_alloc_pgtable_s1() 923 if (!data->pgd) in arm_64_lpae_alloc_pgtable_s1() 930 cfg->arm_lpae_s1_cfg.ttbr = virt_to_phys(data->pgd); in arm_64_lpae_alloc_pgtable_s1() 1023 data->pgd = __arm_lpae_alloc_pages(ARM_LPAE_PGD_SIZE(data), in arm_64_lpae_alloc_pgtable_s2() 1025 if (!data->pgd) in arm_64_lpae_alloc_pgtable_s2() [all …]
|
D | io-pgtable-arm-v7s.c | 167 arm_v7s_iopte *pgd; member 542 ret = __arm_v7s_map(data, iova, paddr, pgsize, prot, 1, data->pgd, in arm_v7s_map_pages() 573 arm_v7s_iopte pte = data->pgd[i]; in arm_v7s_free_pgtable() 579 __arm_v7s_free_table(data->pgd, 1, data); in arm_v7s_free_pgtable() 745 ret = __arm_v7s_unmap(data, gather, iova, pgsize, 1, data->pgd); in arm_v7s_unmap_pages() 766 arm_v7s_iopte *ptep = data->pgd, pte; in arm_v7s_iova_to_phys() 853 data->pgd = __arm_v7s_alloc_table(1, GFP_KERNEL, data); in arm_v7s_alloc_pgtable() 854 if (!data->pgd) in arm_v7s_alloc_pgtable() 861 cfg->arm_v7s_cfg.ttbr = virt_to_phys(data->pgd) | ARM_V7S_TTBR_S | in arm_v7s_alloc_pgtable()
|
D | omap-iommu.c | 1614 u32 *pgd, *pte; in omap_iommu_iova_to_phys() local 1621 iopgtable_lookup_entry(oiommu, da, &pgd, &pte); in omap_iommu_iova_to_phys() 1632 if (iopgd_is_section(*pgd)) in omap_iommu_iova_to_phys() 1633 ret = omap_iommu_translate(*pgd, da, IOSECTION_MASK); in omap_iommu_iova_to_phys() 1634 else if (iopgd_is_super(*pgd)) in omap_iommu_iova_to_phys() 1635 ret = omap_iommu_translate(*pgd, da, IOSUPER_MASK); in omap_iommu_iova_to_phys() 1637 dev_err(dev, "bogus pgd 0x%x, da 0x%llx", *pgd, in omap_iommu_iova_to_phys()
|
D | exynos-iommu.c | 340 static void __sysmmu_set_ptbase(struct sysmmu_drvdata *data, phys_addr_t pgd) in __sysmmu_set_ptbase() argument 343 writel(pgd, data->sfrbase + REG_PT_BASE_ADDR); in __sysmmu_set_ptbase() 345 writel(pgd >> PAGE_SHIFT, in __sysmmu_set_ptbase()
|
/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ |
D | vmm.c | 142 struct nvkm_vmm_pt *pgd = it->pt[it->lvl + 1]; in nvkm_vmm_unref_pdes() local 150 if (--pgd->refs[0]) { in nvkm_vmm_unref_pdes() 157 if (pgd->pt[0]) { in nvkm_vmm_unref_pdes() 159 func->sparse(vmm, pgd->pt[0], pdei, 1); in nvkm_vmm_unref_pdes() 160 pgd->pde[pdei] = NVKM_VMM_PDE_SPARSE; in nvkm_vmm_unref_pdes() 162 func->unmap(vmm, pgd->pt[0], pdei, 1); in nvkm_vmm_unref_pdes() 163 pgd->pde[pdei] = NULL; in nvkm_vmm_unref_pdes() 170 func->pde(vmm, pgd, pdei); in nvkm_vmm_unref_pdes() 171 pgd->pde[pdei] = NULL; in nvkm_vmm_unref_pdes() 177 func->pde(vmm, pgd, pdei); in nvkm_vmm_unref_pdes() [all …]
|
D | vmmgp100.c | 233 gp100_vmm_pd0_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) in gp100_vmm_pd0_pde() argument 235 struct nvkm_vmm_pt *pgt = pgd->pde[pdei]; in gp100_vmm_pd0_pde() 236 struct nvkm_mmu_pt *pd = pgd->pt[0]; in gp100_vmm_pd0_pde() 357 gp100_vmm_pd1_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) in gp100_vmm_pd1_pde() argument 359 struct nvkm_vmm_pt *pgt = pgd->pde[pdei]; in gp100_vmm_pd1_pde() 360 struct nvkm_mmu_pt *pd = pgd->pt[0]; in gp100_vmm_pd1_pde()
|
D | vmmgf100.c | 106 gf100_vmm_pgd_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) in gf100_vmm_pgd_pde() argument 108 struct nvkm_vmm_pt *pgt = pgd->pde[pdei]; in gf100_vmm_pgd_pde() 109 struct nvkm_mmu_pt *pd = pgd->pt[0]; in gf100_vmm_pgd_pde()
|
D | vmmnv50.c | 145 nv50_vmm_pgd_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) in nv50_vmm_pgd_pde() argument 151 if (!nv50_vmm_pde(vmm, pgd->pde[pdei], &data)) in nv50_vmm_pgd_pde()
|
/drivers/gpu/drm/nouveau/nvkm/subdev/bar/ |
D | nv50.h | 12 struct nvkm_gpuobj *pgd; member
|
D | nv50.c | 124 ret = nvkm_gpuobj_new(device, 0x4000, 0, false, bar->mem, &bar->pgd); in nv50_bar_oneinit() 214 nvkm_gpuobj_del(&bar->pgd); in nv50_bar_dtor()
|
/drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
D | channv50.h | 15 struct nvkm_gpuobj *pgd; member
|
D | channv50.c | 210 nvkm_gpuobj_del(&chan->pgd); in nv50_fifo_chan_dtor() 263 &chan->pgd); in nv50_fifo_chan_ctor()
|
D | chang84.c | 269 &chan->pgd); in g84_fifo_chan_ctor()
|
/drivers/firmware/efi/ |
D | riscv-runtime.c | 34 efi_mm.pgd = pgd_alloc(&efi_mm); in efi_virtmap_init()
|
D | arm-runtime.c | 56 efi_mm.pgd = pgd_alloc(&efi_mm); in efi_virtmap_init()
|
/drivers/iommu/arm/arm-smmu-v3/ |
D | arm-smmu-v3-sva.c | 127 cd->ttbr = virt_to_phys(mm->pgd); in arm_smmu_alloc_shared_cd()
|
/drivers/iommu/amd/ |
D | iommu_v2.c | 650 __pa(pasid_state->mm->pgd)); in amd_iommu_bind_pasid()
|