diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2013-10-17 00:42:21 +0200 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2014-01-14 19:19:56 +0100 |
commit | c8f3a7dc0102fc9f89cc373c6dd7beb49916a695 (patch) | |
tree | 686b9879c602063a10eb9b9b51e1532f40792a32 /arch/xtensa | |
parent | xtensa: call check_s32c1i after trap_init (diff) | |
download | linux-c8f3a7dc0102fc9f89cc373c6dd7beb49916a695.tar.xz linux-c8f3a7dc0102fc9f89cc373c6dd7beb49916a695.zip |
xtensa: move init_mmu declaration to mmu_context.h
Secondary CPUs need this declaration to initialize their MMUs.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
Diffstat (limited to 'arch/xtensa')
-rw-r--r-- | arch/xtensa/include/asm/mmu_context.h | 6 | ||||
-rw-r--r-- | arch/xtensa/kernel/setup.c | 7 |
2 files changed, 7 insertions, 6 deletions
diff --git a/arch/xtensa/include/asm/mmu_context.h b/arch/xtensa/include/asm/mmu_context.h index d43525a286bb..86292c28674f 100644 --- a/arch/xtensa/include/asm/mmu_context.h +++ b/arch/xtensa/include/asm/mmu_context.h @@ -49,6 +49,12 @@ extern unsigned long asid_cache; #define ASID_MASK ((1 << XCHAL_MMU_ASID_BITS) - 1) #define ASID_INSERT(x) (0x03020001 | (((x) & ASID_MASK) << 8)) +#ifdef CONFIG_MMU +void init_mmu(void); +#else +static inline void init_mmu(void) { } +#endif + static inline void set_rasid_register (unsigned long val) { __asm__ __volatile__ (" wsr %0, rasid\n\t" diff --git a/arch/xtensa/kernel/setup.c b/arch/xtensa/kernel/setup.c index 9bc6f0644892..3d353140c2d0 100644 --- a/arch/xtensa/kernel/setup.c +++ b/arch/xtensa/kernel/setup.c @@ -37,6 +37,7 @@ #endif #include <asm/bootparam.h> +#include <asm/mmu_context.h> #include <asm/pgtable.h> #include <asm/processor.h> #include <asm/timex.h> @@ -85,12 +86,6 @@ static char default_command_line[COMMAND_LINE_SIZE] __initdata = CONFIG_CMDLINE; sysmem_info_t __initdata sysmem; -#ifdef CONFIG_MMU -extern void init_mmu(void); -#else -static inline void init_mmu(void) { } -#endif - extern int mem_reserve(unsigned long, unsigned long, int); extern void bootmem_init(void); extern void zones_init(void); |