Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 261849
b: refs/heads/master
c: a0e997c
h: refs/heads/master
i:
  261847: 06b98ae
v: v3
  • Loading branch information
Geert Uytterhoeven committed Jul 30, 2011
1 parent a1ea4e3 commit a126631
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 26 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 217bbd81885587b462311fab1b04172926c59f1e
refs/heads/master: a0e997c20a2fbe25b0f97fb7521cdbda341c7f0a
32 changes: 7 additions & 25 deletions trunk/arch/sparc/kernel/ioport.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,6 @@ static inline void dma_make_coherent(unsigned long pa, unsigned long len)
}
#endif

static struct resource *_sparc_find_resource(struct resource *r,
unsigned long);

static void __iomem *_sparc_ioremap(struct resource *res, u32 bus, u32 pa, int sz);
static void __iomem *_sparc_alloc_io(unsigned int busno, unsigned long phys,
unsigned long size, char *name);
Expand Down Expand Up @@ -143,7 +140,11 @@ void iounmap(volatile void __iomem *virtual)
unsigned long vaddr = (unsigned long) virtual & PAGE_MASK;
struct resource *res;

if ((res = _sparc_find_resource(&sparc_iomap, vaddr)) == NULL) {
/*
* XXX Too slow. Can have 8192 DVMA pages on sun4m in the worst case.
* This probably warrants some sort of hashing.
*/
if ((res = lookup_resource(&sparc_iomap, vaddr)) == NULL) {
printk("free_io/iounmap: cannot free %lx\n", vaddr);
return;
}
Expand Down Expand Up @@ -319,7 +320,7 @@ static void sbus_free_coherent(struct device *dev, size_t n, void *p,
struct resource *res;
struct page *pgv;

if ((res = _sparc_find_resource(&_sparc_dvma,
if ((res = lookup_resource(&_sparc_dvma,
(unsigned long)p)) == NULL) {
printk("sbus_free_consistent: cannot free %p\n", p);
return;
Expand Down Expand Up @@ -492,7 +493,7 @@ static void pci32_free_coherent(struct device *dev, size_t n, void *p,
{
struct resource *res;

if ((res = _sparc_find_resource(&_sparc_dvma,
if ((res = lookup_resource(&_sparc_dvma,
(unsigned long)p)) == NULL) {
printk("pci_free_consistent: cannot free %p\n", p);
return;
Expand Down Expand Up @@ -715,25 +716,6 @@ static const struct file_operations sparc_io_proc_fops = {
};
#endif /* CONFIG_PROC_FS */

/*
* This is a version of find_resource and it belongs to kernel/resource.c.
* Until we have agreement with Linus and Martin, it lingers here.
*
* XXX Too slow. Can have 8192 DVMA pages on sun4m in the worst case.
* This probably warrants some sort of hashing.
*/
static struct resource *_sparc_find_resource(struct resource *root,
unsigned long start)
{
struct resource *tmp;

for (tmp = root->child; tmp != 0; tmp = tmp->sibling) {
if (tmp->start == start)
return tmp;
}
return NULL;
}

static void register_proc_sparc_ioport(void)
{
#ifdef CONFIG_PROC_FS
Expand Down

0 comments on commit a126631

Please sign in to comment.