summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/setup.h
diff options
context:
space:
mode:
authorRussell King2008-10-01 17:56:15 +0200
committerRussell King2008-10-01 18:22:02 +0200
commitd2a38ef9c1585b47462c7be5501228ac57fbd3b1 (patch)
tree81ae36059881fbee802ec45081a74a866d92819e /arch/arm/include/asm/setup.h
parent[ARM] mm: move vmalloc= parsing to arch/arm/mm/mmu.c (diff)
downloadkernel-qcow2-linux-d2a38ef9c1585b47462c7be5501228ac57fbd3b1.tar.gz
kernel-qcow2-linux-d2a38ef9c1585b47462c7be5501228ac57fbd3b1.tar.xz
kernel-qcow2-linux-d2a38ef9c1585b47462c7be5501228ac57fbd3b1.zip
[ARM] mm: provide helpers for accessing membanks
Provide helpers for getting physical addresses or pfns from the meminfo array, and use them. Move for_each_nodebank() to asm/setup.h alongside the meminfo structure definition. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/setup.h')
-rw-r--r--arch/arm/include/asm/setup.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/include/asm/setup.h b/arch/arm/include/asm/setup.h
index 7bbf105463f1..a65413ba121d 100644
--- a/arch/arm/include/asm/setup.h
+++ b/arch/arm/include/asm/setup.h
@@ -209,6 +209,17 @@ struct meminfo {
struct membank bank[NR_BANKS];
};
+#define for_each_nodebank(iter,mi,no) \
+ for (iter = 0; iter < mi->nr_banks; iter++) \
+ if (mi->bank[iter].node == no)
+
+#define bank_pfn_start(bank) __phys_to_pfn((bank)->start)
+#define bank_pfn_end(bank) __phys_to_pfn((bank)->start + (bank)->size)
+#define bank_pfn_size(bank) ((bank)->size >> PAGE_SHIFT)
+#define bank_phys_start(bank) (bank)->start
+#define bank_phys_end(bank) ((bank)->start + (bank)->size)
+#define bank_phys_size(bank) (bank)->size
+
/*
* Early command line parameters.
*/