Lines Matching refs:size
60 /* Calculate the block/page mapping size at level l for pagetable in d. */
187 static void *__arm_lpae_alloc_pages(size_t size, gfp_t gfp,
191 int order = get_order(size);
204 dma = dma_map_single(dev, pages, size, DMA_TO_DEVICE);
220 dma_unmap_single(dev, dma, size, DMA_TO_DEVICE);
226 static void __arm_lpae_free_pages(void *pages, size_t size,
231 size, DMA_TO_DEVICE);
232 free_pages((unsigned long)pages, get_order(size));
253 unsigned long iova, size_t size, int lvl,
335 phys_addr_t paddr, size_t size, arm_lpae_iopte prot,
347 if (size == block_size)
377 return __arm_lpae_map(data, iova, paddr, size, prot, lvl + 1, cptep, gfp);
445 phys_addr_t paddr, size_t size, int iommu_prot, gfp_t gfp)
458 if (WARN_ON(!size || (size & cfg->pgsize_bitmap) != size))
467 ret = __arm_lpae_map(data, iova, paddr, size, prot, lvl, ptep, gfp);
518 unsigned long iova, size_t size,
536 if (size == split_sz)
563 io_pgtable_tlb_add_page(&data->iop, gather, iova, size);
564 return size;
567 return __arm_lpae_unmap(data, gather, iova, size, lvl, tablep);
572 unsigned long iova, size_t size, int lvl,
587 /* If the size matches this level, we're in the right place */
588 if (size == ARM_LPAE_BLOCK_SIZE(lvl, data)) {
593 io_pgtable_tlb_flush_walk(iop, iova, size,
605 io_pgtable_tlb_add_page(iop, gather, iova, size);
608 return size;
614 return arm_lpae_split_blk_unmap(data, gather, iova, size, pte,
620 return __arm_lpae_unmap(data, gather, iova, size, lvl + 1, ptep);
624 size_t size, struct iommu_iotlb_gather *gather)
631 if (WARN_ON(!size || (size & cfg->pgsize_bitmap) != size))
639 return __arm_lpae_unmap(data, gather, iova, size, data->start_level, ptep);
686 * the CPU page size if possible, otherwise prefer smaller sizes.
749 /* Calculate the actual size of our pgd (without concatenation) */
905 sl++; /* SL0 format is different for 4K granule size */
1075 static void __init dummy_tlb_flush(unsigned long iova, size_t size,
1079 WARN_ON(!(size & cfg_cookie->pgsize_bitmap));
1124 size_t size;
1155 size = 1UL << j;
1157 if (ops->map(ops, iova, iova, size, IOMMU_READ |
1164 if (!ops->map(ops, iova, iova + size, size,
1175 size = 1UL << __ffs(cfg->pgsize_bitmap);
1176 if (ops->unmap(ops, SZ_1G + size, size, NULL) != size)
1180 if (ops->map(ops, SZ_1G + size, size, size, IOMMU_READ, GFP_KERNEL))
1183 if (ops->iova_to_phys(ops, SZ_1G + size + 42) != (size + 42))
1189 size = 1UL << j;
1191 if (ops->unmap(ops, iova, size, NULL) != size)
1198 if (ops->map(ops, iova, iova, size, IOMMU_WRITE, GFP_KERNEL))