aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-x86
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2008-06-25 00:19:03 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-08 07:10:28 -0400
commit4583ed514ea9ac844a6eb02d33120beaedf6837f (patch)
tree9df2d1e1a5d1726303f761954593defc483e2d20 /include/asm-x86
parentbb23e403e5162765dabe3dc78646724753d6359b (diff)
x86, 64-bit: unify early_ioremap
The 32-bit early_ioremap will work equally well for 64-bit, so just use it. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Cc: xen-devel <xen-devel@lists.xensource.com> Cc: Stephen Tweedie <sct@redhat.com> Cc: Eduardo Habkost <ehabkost@redhat.com> Cc: Mark McLoughlin <markmc@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-x86')
-rw-r--r--include/asm-x86/fixmap_64.h13
-rw-r--r--include/asm-x86/io.h13
-rw-r--r--include/asm-x86/io_32.h12
3 files changed, 26 insertions, 12 deletions
diff --git a/include/asm-x86/fixmap_64.h b/include/asm-x86/fixmap_64.h
index 626098823a0c..c7dcc365f470 100644
--- a/include/asm-x86/fixmap_64.h
+++ b/include/asm-x86/fixmap_64.h
@@ -49,6 +49,19 @@ enum fixed_addresses {
49#ifdef CONFIG_PROVIDE_OHCI1394_DMA_INIT 49#ifdef CONFIG_PROVIDE_OHCI1394_DMA_INIT
50 FIX_OHCI1394_BASE, 50 FIX_OHCI1394_BASE,
51#endif 51#endif
52 __end_of_permanent_fixed_addresses,
53 /*
54 * 256 temporary boot-time mappings, used by early_ioremap(),
55 * before ioremap() is functional.
56 *
57 * We round it up to the next 512 pages boundary so that we
58 * can have a single pgd entry and a single pte table:
59 */
60#define NR_FIX_BTMAPS 64
61#define FIX_BTMAPS_NESTING 4
62 FIX_BTMAP_END = __end_of_permanent_fixed_addresses + 512 -
63 (__end_of_permanent_fixed_addresses & 511),
64 FIX_BTMAP_BEGIN = FIX_BTMAP_END + NR_FIX_BTMAPS*FIX_BTMAPS_NESTING - 1,
52 __end_of_fixed_addresses 65 __end_of_fixed_addresses
53}; 66};
54 67
diff --git a/include/asm-x86/io.h b/include/asm-x86/io.h
index 8e9eca93f9b9..c63563df4ac8 100644
--- a/include/asm-x86/io.h
+++ b/include/asm-x86/io.h
@@ -72,4 +72,17 @@ extern int ioremap_change_attr(unsigned long vaddr, unsigned long size,
72 unsigned long prot_val); 72 unsigned long prot_val);
73extern void __iomem *ioremap_wc(unsigned long offset, unsigned long size); 73extern void __iomem *ioremap_wc(unsigned long offset, unsigned long size);
74 74
75/*
76 * early_ioremap() and early_iounmap() are for temporary early boot-time
77 * mappings, before the real ioremap() is functional.
78 * A boot-time mapping is currently limited to at most 16 pages.
79 */
80extern void early_ioremap_init(void);
81extern void early_ioremap_clear(void);
82extern void early_ioremap_reset(void);
83extern void *early_ioremap(unsigned long offset, unsigned long size);
84extern void early_iounmap(void *addr, unsigned long size);
85extern void __iomem *fix_ioremap(unsigned idx, unsigned long phys);
86
87
75#endif /* _ASM_X86_IO_H */ 88#endif /* _ASM_X86_IO_H */
diff --git a/include/asm-x86/io_32.h b/include/asm-x86/io_32.h
index d71be8df9797..4df44ed54077 100644
--- a/include/asm-x86/io_32.h
+++ b/include/asm-x86/io_32.h
@@ -122,18 +122,6 @@ static inline void __iomem *ioremap(resource_size_t offset, unsigned long size)
122extern void iounmap(volatile void __iomem *addr); 122extern void iounmap(volatile void __iomem *addr);
123 123
124/* 124/*
125 * early_ioremap() and early_iounmap() are for temporary early boot-time
126 * mappings, before the real ioremap() is functional.
127 * A boot-time mapping is currently limited to at most 16 pages.
128 */
129extern void early_ioremap_init(void);
130extern void early_ioremap_clear(void);
131extern void early_ioremap_reset(void);
132extern void *early_ioremap(unsigned long offset, unsigned long size);
133extern void early_iounmap(void *addr, unsigned long size);
134extern void __iomem *fix_ioremap(unsigned idx, unsigned long phys);
135
136/*
137 * ISA I/O bus memory addresses are 1:1 with the physical address. 125 * ISA I/O bus memory addresses are 1:1 with the physical address.
138 */ 126 */
139#define isa_virt_to_bus virt_to_phys 127#define isa_virt_to_bus virt_to_phys