Lines Matching refs:vaddr
96 static unsigned long iounit_get_area(struct iounit_struct *iounit, unsigned long vaddr, int size)
102 npages = ((vaddr & ~PAGE_MASK) + size + (PAGE_SIZE-1)) >> PAGE_SHIFT;
111 IOD(("iounit_get_area(%08lx,%d[%d])=", vaddr, size, npages));
126 panic("iounit_get_area: Couldn't find free iopte slots for (%08lx,%d)\n", vaddr, size);
134 iopte = MKIOPTE(__pa(vaddr & PAGE_MASK));
135 vaddr = IOUNIT_DMA_BASE + (scan << PAGE_SHIFT) + (vaddr & ~PAGE_MASK);
140 IOD(("%08lx\n", vaddr));
141 return vaddr;
148 void *vaddr = page_address(page) + offset;
157 ret = iounit_get_area(iounit, (unsigned long)vaddr, len);
180 static void iounit_unmap_page(struct device *dev, dma_addr_t vaddr, size_t len,
187 len = ((vaddr & ~PAGE_MASK) + len + (PAGE_SIZE-1)) >> PAGE_SHIFT;
188 vaddr = (vaddr - IOUNIT_DMA_BASE) >> PAGE_SHIFT;
189 IOD(("iounit_release %08lx-%08lx\n", (long)vaddr, (long)len+vaddr));
190 for (len += vaddr; vaddr < len; vaddr++)
191 clear_bit(vaddr, iounit->bmap);
199 unsigned long flags, vaddr, len;
206 vaddr = (sg->dma_address - IOUNIT_DMA_BASE) >> PAGE_SHIFT;
207 IOD(("iounit_release %08lx-%08lx\n", (long)vaddr, (long)len+vaddr));
208 for (len += vaddr; vaddr < len; vaddr++)
209 clear_bit(vaddr, iounit->bmap);