aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2007-05-13 21:43:20 -0400
committerPaul Mackerras <paulus@samba.org>2007-05-17 07:11:13 -0400
commite3d67b663b5ededac1b2c552b4f0b4fbe94d7ac3 (patch)
tree2875f48c35991ee861594ae664ea72c2705bb32e
parent39d207036c76ff16650772b83fb1a12ab788ca26 (diff)
[POWERPC] Remove fixup_bigphys_addr() for arch/powerpc to avoid link error
There are no actual implementations of fixup_bigphys_addr() in arch/powerpc, and with a 64-bit aware ioremap() and so forth, it should no longer be necessary. This patch removes the last dregs of fixup_bigphys_addr() from arch/powerpc. In fact, the only reason this hasn't caused link errors already is that nobody must have tried using one of the small number of drivers using io_remap_pfn_range() on one of the small number of platforms which are 32-bit but define CONFIG_PHYS_64BIT. Nonetheless this fixes a bug, and should go into 2.6.22. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r--include/asm-powerpc/mmu-44x.h2
-rw-r--r--include/asm-powerpc/pgtable-ppc32.h15
2 files changed, 0 insertions, 17 deletions
diff --git a/include/asm-powerpc/mmu-44x.h b/include/asm-powerpc/mmu-44x.h
index d5ce7a8dfe9f..62772ae839ca 100644
--- a/include/asm-powerpc/mmu-44x.h
+++ b/include/asm-powerpc/mmu-44x.h
@@ -55,8 +55,6 @@
55 55
56typedef unsigned long long phys_addr_t; 56typedef unsigned long long phys_addr_t;
57 57
58extern phys_addr_t fixup_bigphys_addr(phys_addr_t, phys_addr_t);
59
60typedef struct { 58typedef struct {
61 unsigned long id; 59 unsigned long id;
62 unsigned long vdso_base; 60 unsigned long vdso_base;
diff --git a/include/asm-powerpc/pgtable-ppc32.h b/include/asm-powerpc/pgtable-ppc32.h
index 09662a24f226..c863bdb2889c 100644
--- a/include/asm-powerpc/pgtable-ppc32.h
+++ b/include/asm-powerpc/pgtable-ppc32.h
@@ -782,23 +782,8 @@ extern void kernel_set_cachemode (unsigned long address, unsigned long size,
782/* Needs to be defined here and not in linux/mm.h, as it is arch dependent */ 782/* Needs to be defined here and not in linux/mm.h, as it is arch dependent */
783#define kern_addr_valid(addr) (1) 783#define kern_addr_valid(addr) (1)
784 784
785#ifdef CONFIG_PHYS_64BIT
786extern int remap_pfn_range(struct vm_area_struct *vma, unsigned long from,
787 unsigned long paddr, unsigned long size, pgprot_t prot);
788
789static inline int io_remap_pfn_range(struct vm_area_struct *vma,
790 unsigned long vaddr,
791 unsigned long pfn,
792 unsigned long size,
793 pgprot_t prot)
794{
795 phys_addr_t paddr64 = fixup_bigphys_addr(pfn << PAGE_SHIFT, size);
796 return remap_pfn_range(vma, vaddr, paddr64 >> PAGE_SHIFT, size, prot);
797}
798#else
799#define io_remap_pfn_range(vma, vaddr, pfn, size, prot) \ 785#define io_remap_pfn_range(vma, vaddr, pfn, size, prot) \
800 remap_pfn_range(vma, vaddr, pfn, size, prot) 786 remap_pfn_range(vma, vaddr, pfn, size, prot)
801#endif
802 787
803/* 788/*
804 * No page table caches to initialise 789 * No page table caches to initialise