[PATCH 00/03] ARM: 64-bit memory fixes, APE6EVM second memory bank
Magnus Damm
magnus.damm at gmail.com
Wed Jun 5 06:44:27 EDT 2013
ARM: 64-bit memory fixes, APE6EVM second memory bank
[PATCH 01/03] ARM: Let arm_add_memory() always use 64-bit arguments
[PATCH 02/03] ARM: Handle 64-bit memory in case of 32-bit phys_addr_t
[PATCH 03/03] ARM: shmobile: Add second memory bank to DTS for APE6EVM
This patch set contains two fixes and one mach-shmobile specific patch
to add a second memory bank. The fixes attempt to improve the memory bank
handling in the ARM kernel in case of 64-bit addresses.
Without patch 1/3 and 2/3 but with patch 3/3 by itself:
HIGHMEM=n, LPAE=n - OK (busted, second bank ignored with message [1])
HIGHMEM=y, LPAE=n - NG (busted, board hangs on boot)
HIGHMEM=n, LPAE=y - OK
HIGHMEM=y, LPAE=y - OK
[1] Ignoring RAM at 00000000-3fffffff (vmalloc region overlap).
With all patches applied:
HIGHMEM=n, LPAE=n - OK
HIGHMEM=y, LPAE=n - OK
HIGHMEM=n, LPAE=y - OK
HIGHMEM=y, LPAE=y - OK
My opinion is that LPAE should be handled in a similar way to x86 PAE.
This means the kernel should boot regardless of kernel config but 64-bit
memory banks may be truncated if needed like when LPAE=n or HIGHMEN=n.
Comments on how to implement this in a nicer way are very welcome!
Signed-off-by: Magnus Damm <damm at opensource.se>
---
Written against renesas.git renesas-next-20130604v2
arch/arm/boot/dts/r8a73a4-ape6evm.dts | 5 +++++
arch/arm/include/asm/setup.h | 2 +-
arch/arm/kernel/setup.c | 22 +++++++++++++++-------
3 files changed, 21 insertions(+), 8 deletions(-)
More information about the linux-arm-kernel
mailing list