Lines Matching defs:page
58 struct page **pts;
59 struct page *pd;
125 /* page table definitions */
323 /* TODO: free page directory and page tables */
539 /* Set the page directory entry first */
542 /* The flush the page directory entry from caches */
552 static u32 *tegra_smmu_pte_offset(struct page *pt_page, unsigned long iova)
564 struct page *pt_page;
578 dma_addr_t *dmap, struct page *page)
586 dma = dma_map_page(smmu->dev, page, 0, SMMU_SIZE_PT,
589 __free_page(page);
596 __free_page(page);
600 as->pts[pde] = page;
625 struct page *page = as->pts[pde];
628 * When no entries in this page table are used anymore, return the
629 * memory page to the system.
639 __free_page(page);
659 static struct page *as_get_pde_page(struct tegra_smmu_as *as,
664 struct page *page = as->pts[pde];
667 if (page)
668 return page;
672 * allocate page in a sleeping context if GFP flags permit. Hence
678 page = alloc_page(gfp | __GFP_DMA | __GFP_ZERO);
685 * the PDE allocation. In this case the allocated page isn't needed
689 if (page)
690 __free_page(page);
692 page = as->pts[pde];
695 return page;
705 struct page *page;
709 page = as_get_pde_page(as, iova, gfp, flags);
710 if (!page)
713 pte = as_get_pte(as, iova, &pte_dma, page);