Lines Matching refs:npages
60 unsigned long npages; /* Number of pages in list. */ member
74 p->npages = 0; in iommu_batch_start()
91 unsigned long npages = p->npages; in iommu_batch_flush() local
100 while (npages != 0) { in iommu_batch_flush()
104 npages, in iommu_batch_flush()
112 npages, prot, __pa(pglist), in iommu_batch_flush()
117 index_count = HV_PCI_IOTSB_INDEX_COUNT(npages, entry), in iommu_batch_flush()
135 npages -= num; in iommu_batch_flush()
140 p->npages = 0; in iommu_batch_flush()
149 if (p->entry + p->npages == entry) in iommu_batch_new_entry()
161 BUG_ON(p->npages >= PGLIST_NENTS); in iommu_batch_add()
163 p->pglist[p->npages++] = phys_page; in iommu_batch_add()
164 if (p->npages == PGLIST_NENTS) in iommu_batch_add()
175 BUG_ON(p->npages >= PGLIST_NENTS); in iommu_batch_end()
185 unsigned long flags, order, first_page, npages, n; in dma_4v_alloc_coherent() local
199 npages = size >> IO_PAGE_SHIFT; in dma_4v_alloc_coherent()
219 entry = iommu_tbl_range_alloc(dev, tbl, npages, NULL, in dma_4v_alloc_coherent()
236 for (n = 0; n < npages; n++) { in dma_4v_alloc_coherent()
251 iommu_tbl_range_free(tbl, *dma_addrp, npages, IOMMU_ERROR_CODE); in dma_4v_alloc_coherent()
297 unsigned long entry, unsigned long npages) in dma_4v_iommu_demap() argument
307 npages); in dma_4v_iommu_demap()
310 entry, npages, &num); in dma_4v_iommu_demap()
317 npages -= num; in dma_4v_iommu_demap()
318 } while (npages != 0); in dma_4v_iommu_demap()
329 unsigned long order, npages, entry; in dma_4v_free_coherent() local
333 npages = IO_PAGE_ALIGN(size) >> IO_PAGE_SHIFT; in dma_4v_free_coherent()
347 dma_4v_iommu_demap(dev, devhandle, dvma, iotsb_num, entry, npages); in dma_4v_free_coherent()
348 iommu_tbl_range_free(tbl, dvma, npages, IOMMU_ERROR_CODE); in dma_4v_free_coherent()
363 unsigned long flags, npages, oaddr; in dma_4v_map_page() local
376 npages = IO_PAGE_ALIGN(oaddr + sz) - (oaddr & IO_PAGE_MASK); in dma_4v_map_page()
377 npages >>= IO_PAGE_SHIFT; in dma_4v_map_page()
385 entry = iommu_tbl_range_alloc(dev, tbl, npages, NULL, in dma_4v_map_page()
405 for (i = 0; i < npages; i++, base_paddr += IO_PAGE_SIZE) { in dma_4v_map_page()
424 iommu_tbl_range_free(tbl, bus_addr, npages, IOMMU_ERROR_CODE); in dma_4v_map_page()
436 unsigned long npages; in dma_4v_unmap_page() local
452 npages = IO_PAGE_ALIGN(bus_addr + sz) - (bus_addr & IO_PAGE_MASK); in dma_4v_unmap_page()
453 npages >>= IO_PAGE_SHIFT; in dma_4v_unmap_page()
464 dma_4v_iommu_demap(dev, devhandle, bus_addr, iotsb_num, entry, npages); in dma_4v_unmap_page()
465 iommu_tbl_range_free(tbl, bus_addr, npages, IOMMU_ERROR_CODE); in dma_4v_unmap_page()
523 unsigned long paddr, npages, entry, out_entry = 0, slen; in dma_4v_map_sg() local
533 npages = iommu_num_pages(paddr, slen, IO_PAGE_SIZE); in dma_4v_map_sg()
534 entry = iommu_tbl_range_alloc(dev, tbl, npages, in dma_4v_map_sg()
540 tbl, paddr, npages); in dma_4v_map_sg()
552 while (npages--) { in dma_4v_map_sg()
606 unsigned long vaddr, npages; in dma_4v_map_sg() local
609 npages = iommu_num_pages(s->dma_address, s->dma_length, in dma_4v_map_sg()
611 iommu_tbl_range_free(tbl, vaddr, npages, in dma_4v_map_sg()
650 unsigned long npages; in dma_4v_unmap_sg() local
656 npages = iommu_num_pages(dma_handle, len, IO_PAGE_SIZE); in dma_4v_unmap_sg()
667 entry, npages); in dma_4v_unmap_sg()
668 iommu_tbl_range_free(tbl, dma_handle, npages, in dma_4v_unmap_sg()