Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 70bb62f8 authored by Catalin Marinas's avatar Catalin Marinas
Browse files

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: default avatarCatalin Marinas <catalin.marinas@arm.com>

parent 877d1f33
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -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
+6 −1
Original line number Diff line number Diff line
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
+4 −0
Original line number Diff line number Diff line
@@ -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
+1 −1
Original line number Diff line number Diff line
@@ -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,
+1 −1
Original line number Diff line number Diff line
@@ -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,
Loading