diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-01-19 14:00:14 +0900 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-01-19 14:00:14 +0900 |
commit | 6d63e73d520b690e4378cef3003eb5f01f7d128c (patch) | |
tree | 9a28f581e591c684f76190dafda0910323065fda /arch/sh/include/asm/io.h | |
parent | f33609344acfdde1c1acedf6de3efe6b80af93a6 (diff) | |
download | linux-6d63e73d520b690e4378cef3003eb5f01f7d128c.tar.gz linux-6d63e73d520b690e4378cef3003eb5f01f7d128c.tar.bz2 linux-6d63e73d520b690e4378cef3003eb5f01f7d128c.zip |
sh: Limit ioremap_prot() to 32bit pgprot parts.
Presently ioremap_prot() uses an unsigned long to pass the pgprot value
around. This results in the upper half of the pgprot being chomped when
using 64-bit pgprots on a 32-bit ABI (X2TLB and SH-5).
As the only users of ioremap_prot() are presently legacy parts, this
doesn't cause too much of an issue. In the future when the interface is
converted to use pgprot_t directly this can be re-enabled for the other
parts, too.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/include/asm/io.h')
-rw-r--r-- | arch/sh/include/asm/io.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/sh/include/asm/io.h b/arch/sh/include/asm/io.h index c32a55601d01..4bad72a1b39e 100644 --- a/arch/sh/include/asm/io.h +++ b/arch/sh/include/asm/io.h @@ -321,11 +321,13 @@ ioremap_cache(unsigned long offset, unsigned long size) return __ioremap_mode(offset, size, PAGE_KERNEL); } +#ifdef CONFIG_HAVE_IOREMAP_PROT static inline void __iomem * ioremap_prot(resource_size_t offset, unsigned long size, unsigned long flags) { return __ioremap_mode(offset, size, __pgprot(flags)); } +#endif #define ioremap_nocache ioremap #define iounmap __iounmap |