mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-12 05:48:39 +08:00
MIPS/jazzdma: remove the unused vdma_remap function
Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
This commit is contained in:
parent
cbf1449ba5
commit
a4877c44a4
@ -10,8 +10,6 @@
|
||||
*/
|
||||
extern unsigned long vdma_alloc(unsigned long paddr, unsigned long size);
|
||||
extern int vdma_free(unsigned long laddr);
|
||||
extern int vdma_remap(unsigned long laddr, unsigned long paddr,
|
||||
unsigned long size);
|
||||
extern unsigned long vdma_phys2log(unsigned long paddr);
|
||||
extern unsigned long vdma_log2phys(unsigned long laddr);
|
||||
extern void vdma_stats(void); /* for debugging only */
|
||||
|
@ -209,76 +209,6 @@ int vdma_free(unsigned long laddr)
|
||||
|
||||
EXPORT_SYMBOL(vdma_free);
|
||||
|
||||
/*
|
||||
* Map certain page(s) to another physical address.
|
||||
* Caller must have allocated the page(s) before.
|
||||
*/
|
||||
int vdma_remap(unsigned long laddr, unsigned long paddr, unsigned long size)
|
||||
{
|
||||
int first, pages;
|
||||
|
||||
if (laddr > 0xffffff) {
|
||||
if (vdma_debug)
|
||||
printk
|
||||
("vdma_map: Invalid logical address: %08lx\n",
|
||||
laddr);
|
||||
return -EINVAL; /* invalid logical address */
|
||||
}
|
||||
if (paddr > 0x1fffffff) {
|
||||
if (vdma_debug)
|
||||
printk
|
||||
("vdma_map: Invalid physical address: %08lx\n",
|
||||
paddr);
|
||||
return -EINVAL; /* invalid physical address */
|
||||
}
|
||||
|
||||
pages = (((paddr & (VDMA_PAGESIZE - 1)) + size) >> 12) + 1;
|
||||
first = laddr >> 12;
|
||||
if (vdma_debug)
|
||||
printk("vdma_remap: first=%x, pages=%x\n", first, pages);
|
||||
if (first + pages > VDMA_PGTBL_ENTRIES) {
|
||||
if (vdma_debug)
|
||||
printk("vdma_alloc: Invalid size: %08lx\n", size);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
paddr &= ~(VDMA_PAGESIZE - 1);
|
||||
while (pages > 0 && first < VDMA_PGTBL_ENTRIES) {
|
||||
if (pgtbl[first].owner != laddr) {
|
||||
if (vdma_debug)
|
||||
printk("Trying to remap other's pages.\n");
|
||||
return -EPERM; /* not owner */
|
||||
}
|
||||
pgtbl[first].frame = paddr;
|
||||
paddr += VDMA_PAGESIZE;
|
||||
first++;
|
||||
pages--;
|
||||
}
|
||||
|
||||
/*
|
||||
* Update translation table
|
||||
*/
|
||||
r4030_write_reg32(JAZZ_R4030_TRSTBL_INV, 0);
|
||||
|
||||
if (vdma_debug > 2) {
|
||||
int i;
|
||||
pages = (((paddr & (VDMA_PAGESIZE - 1)) + size) >> 12) + 1;
|
||||
first = laddr >> 12;
|
||||
printk("LADDR: ");
|
||||
for (i = first; i < first + pages; i++)
|
||||
printk("%08x ", i << 12);
|
||||
printk("\nPADDR: ");
|
||||
for (i = first; i < first + pages; i++)
|
||||
printk("%08x ", pgtbl[i].frame);
|
||||
printk("\nOWNER: ");
|
||||
for (i = first; i < first + pages; i++)
|
||||
printk("%08x ", pgtbl[i].owner);
|
||||
printk("\n");
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Translate a physical address to a logical address.
|
||||
* This will return the logical address of the first
|
||||
|
Loading…
Reference in New Issue
Block a user