Lines Matching refs:shd_entry
442 spt_entry *shd_entry;
450 shd_entry = NULL;
452 shd_entry = kmalloc(sizeof(*shd_entry), GFP_KERNEL);
453 if (!shd_entry) {
458 shd_entry->shadow_ptable = (unsigned long *)get_zeroed_page(GFP_KERNEL);
459 if (!shd_entry->shadow_ptable) {
461 kfree(shd_entry);
467 shd_entry->index = index;
468 shd_entry->gmem_ptable = addr;
471 return shd_entry;
499 static void free_pagetable_one_level(iommu_info *iommu_entry, spt_entry *shd_entry, int level)
506 psentry = (unsigned long *)shd_entry;
509 iommu_free_page(iommu, shd_entry);
514 psentry = shd_entry->shadow_ptable + i;
522 iommu_free_page(iommu, shd_entry);
527 spt_entry *shd_entry;
531 shd_entry = iommu_entry->shadow_pgd;
532 free_pagetable_one_level(iommu_entry, shd_entry, IOMMU_LEVEL_MAX);
811 spt_entry *shd_entry = NULL;
832 shd_entry = iommu_zalloc_page(iommu);
833 if (!shd_entry) {
840 iommu_entry->shadow_pgd = shd_entry;
844 pgd_pa = iommu_pgt_v2p(iommu, shd_entry->gmem_ptable);
1029 /* fill shd_entry */
1041 static size_t iommu_ptw_map(loongson_iommu *iommu, spt_entry *shd_entry,
1050 psentry = iommu_shadow_offset(shd_entry, start, level);
1051 phwentry = iommu_ptable_offset(shd_entry->gmem_ptable, start, level);
1121 static size_t iommu_ptw_unmap(loongson_iommu *iommu, spt_entry *shd_entry,
1128 psentry = iommu_shadow_offset(shd_entry, start, level);
1129 phwentry = iommu_ptable_offset(shd_entry->gmem_ptable, start, level);