aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-arm/memory.h
diff options
context:
space:
mode:
authorDeepak Saxena <dsaxena@plexity.net>2006-01-09 19:23:11 +0000
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-01-09 19:23:11 +0000
commit9d4ae7276ae26c5bfba6207cf05340af1931d8d4 (patch)
treebf6f09189541ac964365c68362e9915c48510eb5 /include/asm-arm/memory.h
parent16ed926eee5497db52fbee4d2db2dedbcd23561c (diff)
downloadkernel_samsung_aries-9d4ae7276ae26c5bfba6207cf05340af1931d8d4.zip
kernel_samsung_aries-9d4ae7276ae26c5bfba6207cf05340af1931d8d4.tar.gz
kernel_samsung_aries-9d4ae7276ae26c5bfba6207cf05340af1931d8d4.tar.bz2
[ARM] 3070/2: Add __ioremap_pfn() API
Patch from Deepak Saxena In working on adding 36-bit addressed supersection support to ioremap(), I came to the conclusion that it would be far simpler to do so by just splitting __ioremap() into a main external interface and adding an __ioremap_pfn() function that takes a pfn + offset into the page that __ioremap() can call. This way existing callers of __ioremap() won't have to change their code and 36-bit systems will just call __ioremap_pfn() and we will not have to deal with unsigned long long variables. Note that __ioremap_pfn() should _NOT_ be called directly by drivers but is reserved for use by arch_ioremap() implementations that map 32-bit resource regions into the real 36-bit address and then call this new function. Signed-off-by: Deepak Saxena <dsaxena@plexity.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/asm-arm/memory.h')
-rw-r--r--include/asm-arm/memory.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/asm-arm/memory.h b/include/asm-arm/memory.h
index 3e57236..3d7f08b 100644
--- a/include/asm-arm/memory.h
+++ b/include/asm-arm/memory.h
@@ -58,6 +58,12 @@
#endif
/*
+ * Convert a physical address to a Page Frame Number and back
+ */
+#define __phys_to_pfn(paddr) ((paddr) >> PAGE_SHIFT)
+#define __pfn_to_phys(pfn) ((pfn) << PAGE_SHIFT)
+
+/*
* The module space lives between the addresses given by TASK_SIZE
* and PAGE_OFFSET - it must be within 32MB of the kernel text.
*/