aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-realview/Kconfig11
-rw-r--r--arch/arm/mach-realview/Makefile.boot7
-rw-r--r--arch/arm/mach-realview/include/mach/memory.h4
-rw-r--r--arch/arm/mach-realview/realview_eb.c2
-rw-r--r--arch/arm/mach-realview/realview_pb1176.c2
-rw-r--r--arch/arm/mach-realview/realview_pb11mp.c2
6 files changed, 24 insertions, 4 deletions
diff --git a/arch/arm/mach-realview/Kconfig b/arch/arm/mach-realview/Kconfig
index 5ccde7cf39e..6695fb33afb 100644
--- a/arch/arm/mach-realview/Kconfig
+++ b/arch/arm/mach-realview/Kconfig
@@ -37,4 +37,15 @@ config MACH_REALVIEW_PB1176
37 help 37 help
38 Include support for the ARM(R) RealView ARM1176 Platform Baseboard. 38 Include support for the ARM(R) RealView ARM1176 Platform Baseboard.
39 39
40config REALVIEW_HIGH_PHYS_OFFSET
41 bool "High physical base address for the RealView platform"
42 depends on !MACH_REALVIEW_PB1176
43 default y
44 help
45 RealView boards other than PB1176 have the RAM available at
46 0x70000000, 256MB of which being mirrored at 0x00000000. If
47 the board supports 512MB of RAM, this option allows the
48 memory to be accessed contiguously at the high physical
49 offset.
50
40endmenu 51endmenu
diff --git a/arch/arm/mach-realview/Makefile.boot b/arch/arm/mach-realview/Makefile.boot
index c7e75acfe6c..d97e003d3df 100644
--- a/arch/arm/mach-realview/Makefile.boot
+++ b/arch/arm/mach-realview/Makefile.boot
@@ -1,4 +1,9 @@
1ifeq ($(CONFIG_REALVIEW_HIGH_PHYS_OFFSET),y)
2 zreladdr-y := 0x70008000
3params_phys-y := 0x70000100
4initrd_phys-y := 0x70800000
5else
1 zreladdr-y := 0x00008000 6 zreladdr-y := 0x00008000
2params_phys-y := 0x00000100 7params_phys-y := 0x00000100
3initrd_phys-y := 0x00800000 8initrd_phys-y := 0x00800000
4 9endif
diff --git a/arch/arm/mach-realview/include/mach/memory.h b/arch/arm/mach-realview/include/mach/memory.h
index 0e673483a14..759ed10d74f 100644
--- a/arch/arm/mach-realview/include/mach/memory.h
+++ b/arch/arm/mach-realview/include/mach/memory.h
@@ -23,7 +23,11 @@
23/* 23/*
24 * Physical DRAM offset. 24 * Physical DRAM offset.
25 */ 25 */
26#ifdef CONFIG_REALVIEW_HIGH_PHYS_OFFSET
27#define PHYS_OFFSET UL(0x70000000)
28#else
26#define PHYS_OFFSET UL(0x00000000) 29#define PHYS_OFFSET UL(0x00000000)
30#endif
27 31
28/* 32/*
29 * Virtual view <-> DMA view memory address translations 33 * Virtual view <-> DMA view memory address translations
diff --git a/arch/arm/mach-realview/realview_eb.c b/arch/arm/mach-realview/realview_eb.c
index eb829eb1ebe..f6e04edf922 100644
--- a/arch/arm/mach-realview/realview_eb.c
+++ b/arch/arm/mach-realview/realview_eb.c
@@ -392,7 +392,7 @@ MACHINE_START(REALVIEW_EB, "ARM-RealView EB")
392 /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */ 392 /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */
393 .phys_io = REALVIEW_EB_UART0_BASE, 393 .phys_io = REALVIEW_EB_UART0_BASE,
394 .io_pg_offst = (IO_ADDRESS(REALVIEW_EB_UART0_BASE) >> 18) & 0xfffc, 394 .io_pg_offst = (IO_ADDRESS(REALVIEW_EB_UART0_BASE) >> 18) & 0xfffc,
395 .boot_params = 0x00000100, 395 .boot_params = PHYS_OFFSET + 0x00000100,
396 .map_io = realview_eb_map_io, 396 .map_io = realview_eb_map_io,
397 .init_irq = gic_init_irq, 397 .init_irq = gic_init_irq,
398 .timer = &realview_eb_timer, 398 .timer = &realview_eb_timer,
diff --git a/arch/arm/mach-realview/realview_pb1176.c b/arch/arm/mach-realview/realview_pb1176.c
index cccdb3eb90f..a9fac653b30 100644
--- a/arch/arm/mach-realview/realview_pb1176.c
+++ b/arch/arm/mach-realview/realview_pb1176.c
@@ -284,7 +284,7 @@ MACHINE_START(REALVIEW_PB1176, "ARM-RealView PB1176")
284 /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */ 284 /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */
285 .phys_io = REALVIEW_PB1176_UART0_BASE, 285 .phys_io = REALVIEW_PB1176_UART0_BASE,
286 .io_pg_offst = (IO_ADDRESS(REALVIEW_PB1176_UART0_BASE) >> 18) & 0xfffc, 286 .io_pg_offst = (IO_ADDRESS(REALVIEW_PB1176_UART0_BASE) >> 18) & 0xfffc,
287 .boot_params = 0x00000100, 287 .boot_params = PHYS_OFFSET + 0x00000100,
288 .map_io = realview_pb1176_map_io, 288 .map_io = realview_pb1176_map_io,
289 .init_irq = gic_init_irq, 289 .init_irq = gic_init_irq,
290 .timer = &realview_pb1176_timer, 290 .timer = &realview_pb1176_timer,
diff --git a/arch/arm/mach-realview/realview_pb11mp.c b/arch/arm/mach-realview/realview_pb11mp.c
index 8b863148ec1..8a27cd0a474 100644
--- a/arch/arm/mach-realview/realview_pb11mp.c
+++ b/arch/arm/mach-realview/realview_pb11mp.c
@@ -334,7 +334,7 @@ MACHINE_START(REALVIEW_PB11MP, "ARM-RealView PB11MPCore")
334 /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */ 334 /* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */
335 .phys_io = REALVIEW_PB11MP_UART0_BASE, 335 .phys_io = REALVIEW_PB11MP_UART0_BASE,
336 .io_pg_offst = (IO_ADDRESS(REALVIEW_PB11MP_UART0_BASE) >> 18) & 0xfffc, 336 .io_pg_offst = (IO_ADDRESS(REALVIEW_PB11MP_UART0_BASE) >> 18) & 0xfffc,
337 .boot_params = 0x00000100, 337 .boot_params = PHYS_OFFSET + 0x00000100,
338 .map_io = realview_pb11mp_map_io, 338 .map_io = realview_pb11mp_map_io,
339 .init_irq = gic_init_irq, 339 .init_irq = gic_init_irq,
340 .timer = &realview_pb11mp_timer, 340 .timer = &realview_pb11mp_timer,