aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/sparsemem.h
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2008-10-01 17:11:06 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2008-10-01 17:24:04 +0100
commit07f841b7c587a3cbf481509be09ba5eda05f8d31 (patch)
tree44f7a45c56568f17841c1a37afc49193fecb1714 /arch/arm/include/asm/sparsemem.h
parentb7a69ac303cbfc8d6fa8e91d10e8049244ba6847 (diff)
downloadlinux-2.6.34-ux500-07f841b7c587a3cbf481509be09ba5eda05f8d31.tar.gz
[ARM] mm: enable sparsemem on clps7500 and RiscPC
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/sparsemem.h')
-rw-r--r--arch/arm/include/asm/sparsemem.h20
1 files changed, 17 insertions, 3 deletions
diff --git a/arch/arm/include/asm/sparsemem.h b/arch/arm/include/asm/sparsemem.h
index 277158191a0..00098615c6f 100644
--- a/arch/arm/include/asm/sparsemem.h
+++ b/arch/arm/include/asm/sparsemem.h
@@ -3,8 +3,22 @@
#include <asm/memory.h>
-#define MAX_PHYSADDR_BITS 32
-#define MAX_PHYSMEM_BITS 32
-#define SECTION_SIZE_BITS NODE_MEM_SIZE_BITS
+/*
+ * Two definitions are required for sparsemem:
+ *
+ * MAX_PHYSMEM_BITS: The number of physical address bits required
+ * to address the last byte of memory.
+ *
+ * SECTION_SIZE_BITS: The number of physical address bits to cover
+ * the maximum amount of memory in a section.
+ *
+ * Eg, if you have 2 banks of up to 64MB at 0x80000000, 0x84000000,
+ * then MAX_PHYSMEM_BITS is 32, SECTION_SIZE_BITS is 26.
+ *
+ * Define these in your mach/memory.h.
+ */
+#if !defined(SECTION_SIZE_BITS) || !defined(MAX_PHYSMEM_BITS)
+#error Sparsemem is not supported on this platform
+#endif
#endif