diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2005-11-07 16:01:06 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-11-07 16:01:06 -0500 |
commit | 9b1283bedd6b8fe2f4dfc47705d6cea1b5e2d853 (patch) | |
tree | 58f922601d802024338383aba70518b3265e58ce /arch | |
parent | 01bbaf0b2b7b38e43139dce8bd64f8c7b2b83940 (diff) |
[ARM] Add support for Realview with MPcore tile
Add uniprocessor support for Realview platform fitted with the
MPcore (SMP) tile.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-realview/Kconfig | 9 | ||||
-rw-r--r-- | arch/arm/mach-realview/realview_eb.c | 5 |
2 files changed, 14 insertions, 0 deletions
diff --git a/arch/arm/mach-realview/Kconfig b/arch/arm/mach-realview/Kconfig index 4b63dc9eabfe..129976866d47 100644 --- a/arch/arm/mach-realview/Kconfig +++ b/arch/arm/mach-realview/Kconfig | |||
@@ -8,4 +8,13 @@ config MACH_REALVIEW_EB | |||
8 | help | 8 | help |
9 | Include support for the ARM(R) RealView Emulation Baseboard platform. | 9 | Include support for the ARM(R) RealView Emulation Baseboard platform. |
10 | 10 | ||
11 | config REALVIEW_MPCORE | ||
12 | bool "Support MPcore tile" | ||
13 | depends on MACH_REALVIEW_EB | ||
14 | help | ||
15 | Enable support for the MPCore tile on the Realview platform. | ||
16 | Since there are device address and interrupt differences, a | ||
17 | kernel built with this option enabled is not compatible with | ||
18 | other tiles. | ||
19 | |||
11 | endmenu | 20 | endmenu |
diff --git a/arch/arm/mach-realview/realview_eb.c b/arch/arm/mach-realview/realview_eb.c index 267bb07e39b7..7dc32503fdf2 100644 --- a/arch/arm/mach-realview/realview_eb.c +++ b/arch/arm/mach-realview/realview_eb.c | |||
@@ -136,6 +136,11 @@ static struct amba_device *amba_devs[] __initdata = { | |||
136 | 136 | ||
137 | static void __init gic_init_irq(void) | 137 | static void __init gic_init_irq(void) |
138 | { | 138 | { |
139 | #ifdef CONFIG_REALVIEW_MPCORE | ||
140 | writel(0x0000a05f, __io_address(REALVIEW_SYS_LOCK)); | ||
141 | writel(0x008003c0, __io_address(REALVIEW_SYS_BASE) + 0xd8); | ||
142 | writel(0x00000000, __io_address(REALVIEW_SYS_LOCK)); | ||
143 | #endif | ||
139 | gic_dist_init(__io_address(REALVIEW_GIC_DIST_BASE)); | 144 | gic_dist_init(__io_address(REALVIEW_GIC_DIST_BASE)); |
140 | gic_cpu_init(__io_address(REALVIEW_GIC_CPU_BASE)); | 145 | gic_cpu_init(__io_address(REALVIEW_GIC_CPU_BASE)); |
141 | } | 146 | } |