summaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel
diff options
context:
space:
mode:
authorMatt Fleming <matt@console-pimps.org>2009-11-05 07:54:17 +0000
committerMatt Fleming <matt@console-pimps.org>2010-01-16 14:31:36 +0000
commit4d35b93a66e9b87df20784fcf130d2e8760be53f (patch)
treeaf0b82ab28a0e4142130c6510cc06cca3d4a67aa /arch/sh/kernel
parent07cad4dc1bfdaefd20c6329e9d8179ad1c600e92 (diff)
sh: Add fixed ioremap support
Some devices need to be ioremap'd and accessed very early in the boot process. It is not possible to use the standard ioremap() function in this case because that requires kmalloc()'ing some virtual address space and kmalloc() may not be available so early in boot. This patch provides fixmap mappings that allow physical address ranges to be remapped into the kernel address space during the early boot stages. Signed-off-by: Matt Fleming <matt@console-pimps.org>
Diffstat (limited to 'arch/sh/kernel')
-rw-r--r--arch/sh/kernel/setup.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/sh/kernel/setup.c b/arch/sh/kernel/setup.c
index f79ebe32a24..e187750dd31 100644
--- a/arch/sh/kernel/setup.c
+++ b/arch/sh/kernel/setup.c
@@ -449,14 +449,15 @@ void __init setup_arch(char **cmdline_p)
#ifdef CONFIG_DUMMY_CONSOLE
conswitchp = &dummy_con;
#endif
+ paging_init();
+ pmb_init();
+
+ ioremap_fixed_init();
/* Perform the machine specific initialisation */
if (likely(sh_mv.mv_setup))
sh_mv.mv_setup(cmdline_p);
- paging_init();
- pmb_init();
-
#ifdef CONFIG_SMP
plat_smp_setup();
#endif