aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-sh
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2007-11-21 18:06:34 +0900
committerPaul Mundt <lethal@linux-sh.org>2008-01-28 13:18:53 +0900
commit0f2c15cecee0ff00e4bfa91dd20b33ccd9285360 (patch)
treed7f14804ae86dcc59f70e4fa5fba2d14cd2216ee /include/asm-sh
parentsh: Copy over special CFLAGS for SH-5 TLB miss. (diff)
downloadlinux-dev-0f2c15cecee0ff00e4bfa91dd20b33ccd9285360.tar.xz
linux-dev-0f2c15cecee0ff00e4bfa91dd20b33ccd9285360.zip
sh: Add onchip remap prototypes, kill old sh64 io.h.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/asm-sh')
-rw-r--r--include/asm-sh/io.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/include/asm-sh/io.h b/include/asm-sh/io.h
index 74305edceeeb..a4e5f5573eee 100644
--- a/include/asm-sh/io.h
+++ b/include/asm-sh/io.h
@@ -191,6 +191,8 @@ __BUILD_MEMORY_STRING(w, u16)
#define mmiowb() wmb() /* synco on SH-4A, otherwise a nop */
+#define IO_SPACE_LIMIT 0xffffffff
+
/*
* This function provides a method for the generic case where a board-specific
* ioport_map simply needs to return the port + some arbitrary port base.
@@ -226,6 +228,11 @@ static inline unsigned int ctrl_inl(unsigned long addr)
return *(volatile unsigned long*)addr;
}
+static inline unsigned long long ctrl_inq(unsigned long addr)
+{
+ return *(volatile unsigned long long*)addr;
+}
+
static inline void ctrl_outb(unsigned char b, unsigned long addr)
{
*(volatile unsigned char*)addr = b;
@@ -241,6 +248,11 @@ static inline void ctrl_outl(unsigned int b, unsigned long addr)
*(volatile unsigned long*)addr = b;
}
+static inline void ctrl_outq(unsigned long long b, unsigned long addr)
+{
+ *(volatile unsigned long long*)addr = b;
+}
+
static inline void ctrl_delay(void)
{
#ifdef P2SEG
@@ -253,7 +265,10 @@ unsigned long long peek_real_address_q(unsigned long long addr);
unsigned long long poke_real_address_q(unsigned long long addr,
unsigned long long val);
-#define IO_SPACE_LIMIT 0xffffffff
+/* arch/sh/mm/ioremap_64.c */
+unsigned long onchip_remap(unsigned long addr, unsigned long size,
+ const char *name);
+extern void onchip_unmap(unsigned long vaddr);
#if !defined(CONFIG_MMU)
#define virt_to_phys(address) ((unsigned long)(address))