RealView: Allow PHYS_OFFSET at 0x70000000
RealView boards like PB11MPCore have 512MB of RAM available contiguously at 0x70000000. Half of the memory is mirrored at 0x00000000 for backwards compatibility. This patch adds the CONFIG_REALVIEW_HIGH_PHYS_OFFSET option option to change the physical base address so that the full amount of RAM is available to Linux. Note that the EB board has 256MB of RAM also mirrored at 0x70000000, the only board without this feature being PB1176. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
Родитель
877d1f3389
Коммит
70bb62f8ec
|
@ -37,4 +37,15 @@ config MACH_REALVIEW_PB1176
|
|||
help
|
||||
Include support for the ARM(R) RealView ARM1176 Platform Baseboard.
|
||||
|
||||
config REALVIEW_HIGH_PHYS_OFFSET
|
||||
bool "High physical base address for the RealView platform"
|
||||
depends on !MACH_REALVIEW_PB1176
|
||||
default y
|
||||
help
|
||||
RealView boards other than PB1176 have the RAM available at
|
||||
0x70000000, 256MB of which being mirrored at 0x00000000. If
|
||||
the board supports 512MB of RAM, this option allows the
|
||||
memory to be accessed contiguously at the high physical
|
||||
offset.
|
||||
|
||||
endmenu
|
||||
|
|
|
@ -1,4 +1,9 @@
|
|||
ifeq ($(CONFIG_REALVIEW_HIGH_PHYS_OFFSET),y)
|
||||
zreladdr-y := 0x70008000
|
||||
params_phys-y := 0x70000100
|
||||
initrd_phys-y := 0x70800000
|
||||
else
|
||||
zreladdr-y := 0x00008000
|
||||
params_phys-y := 0x00000100
|
||||
initrd_phys-y := 0x00800000
|
||||
|
||||
endif
|
||||
|
|
|
@ -23,7 +23,11 @@
|
|||
/*
|
||||
* Physical DRAM offset.
|
||||
*/
|
||||
#ifdef CONFIG_REALVIEW_HIGH_PHYS_OFFSET
|
||||
#define PHYS_OFFSET UL(0x70000000)
|
||||
#else
|
||||
#define PHYS_OFFSET UL(0x00000000)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Virtual view <-> DMA view memory address translations
|
||||
|
|
|
@ -392,7 +392,7 @@ MACHINE_START(REALVIEW_EB, "ARM-RealView EB")
|
|||
/* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */
|
||||
.phys_io = REALVIEW_EB_UART0_BASE,
|
||||
.io_pg_offst = (IO_ADDRESS(REALVIEW_EB_UART0_BASE) >> 18) & 0xfffc,
|
||||
.boot_params = 0x00000100,
|
||||
.boot_params = PHYS_OFFSET + 0x00000100,
|
||||
.map_io = realview_eb_map_io,
|
||||
.init_irq = gic_init_irq,
|
||||
.timer = &realview_eb_timer,
|
||||
|
|
|
@ -284,7 +284,7 @@ MACHINE_START(REALVIEW_PB1176, "ARM-RealView PB1176")
|
|||
/* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */
|
||||
.phys_io = REALVIEW_PB1176_UART0_BASE,
|
||||
.io_pg_offst = (IO_ADDRESS(REALVIEW_PB1176_UART0_BASE) >> 18) & 0xfffc,
|
||||
.boot_params = 0x00000100,
|
||||
.boot_params = PHYS_OFFSET + 0x00000100,
|
||||
.map_io = realview_pb1176_map_io,
|
||||
.init_irq = gic_init_irq,
|
||||
.timer = &realview_pb1176_timer,
|
||||
|
|
|
@ -334,7 +334,7 @@ MACHINE_START(REALVIEW_PB11MP, "ARM-RealView PB11MPCore")
|
|||
/* Maintainer: ARM Ltd/Deep Blue Solutions Ltd */
|
||||
.phys_io = REALVIEW_PB11MP_UART0_BASE,
|
||||
.io_pg_offst = (IO_ADDRESS(REALVIEW_PB11MP_UART0_BASE) >> 18) & 0xfffc,
|
||||
.boot_params = 0x00000100,
|
||||
.boot_params = PHYS_OFFSET + 0x00000100,
|
||||
.map_io = realview_pb11mp_map_io,
|
||||
.init_irq = gic_init_irq,
|
||||
.timer = &realview_pb11mp_timer,
|
||||
|
|
Загрузка…
Ссылка в новой задаче