Home
last modified time | relevance | path

Searched refs:pgd (Results 1 – 22 of 22) sorted by relevance

/drivers/iommu/intel/
Dpasid.c558 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 …]
Dpasid.h118 struct device *dev, pgd_t *pgd,
127 struct device *dev, pgd_t *pgd, u32 pasid,
Diommu.c1025 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 …]
Dsvm.c594 mm ? mm->pgd : init_mm.pgd, in intel_svm_bind_mm()
621 mm ? mm->pgd : init_mm.pgd, in intel_svm_bind_mm()
Ddebugfs.c352 (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/
Dio-pgtable-arm.c152 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 …]
Dio-pgtable-arm-v7s.c167 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()
Domap-iommu.c1614 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()
Dexynos-iommu.c340 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/
Dvmm.c142 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 …]
Dvmmgp100.c233 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()
Dvmmgf100.c106 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()
Dvmmnv50.c145 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/
Dnv50.h12 struct nvkm_gpuobj *pgd; member
Dnv50.c124 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/
Dchannv50.h15 struct nvkm_gpuobj *pgd; member
Dchannv50.c210 nvkm_gpuobj_del(&chan->pgd); in nv50_fifo_chan_dtor()
263 &chan->pgd); in nv50_fifo_chan_ctor()
Dchang84.c269 &chan->pgd); in g84_fifo_chan_ctor()
/drivers/firmware/efi/
Driscv-runtime.c34 efi_mm.pgd = pgd_alloc(&efi_mm); in efi_virtmap_init()
Darm-runtime.c56 efi_mm.pgd = pgd_alloc(&efi_mm); in efi_virtmap_init()
/drivers/iommu/arm/arm-smmu-v3/
Darm-smmu-v3-sva.c127 cd->ttbr = virt_to_phys(mm->pgd); in arm_smmu_alloc_shared_cd()
/drivers/iommu/amd/
Diommu_v2.c650 __pa(pasid_state->mm->pgd)); in amd_iommu_bind_pasid()