aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-sh
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2007-11-21 04:06:34 -0500
committerPaul Mundt <lethal@linux-sh.org>2008-01-27 23:18:53 -0500
commit0f2c15cecee0ff00e4bfa91dd20b33ccd9285360 (patch)
treed7f14804ae86dcc59f70e4fa5fba2d14cd2216ee /include/asm-sh
parent1e1ed39faec635b109ff8c516377310600623674 (diff)
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)
191 191
192#define mmiowb() wmb() /* synco on SH-4A, otherwise a nop */ 192#define mmiowb() wmb() /* synco on SH-4A, otherwise a nop */
193 193
194#define IO_SPACE_LIMIT 0xffffffff
195
194/* 196/*
195 * This function provides a method for the generic case where a board-specific 197 * This function provides a method for the generic case where a board-specific
196 * ioport_map simply needs to return the port + some arbitrary port base. 198 * 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)
226 return *(volatile unsigned long*)addr; 228 return *(volatile unsigned long*)addr;
227} 229}
228 230
231static inline unsigned long long ctrl_inq(unsigned long addr)
232{
233 return *(volatile unsigned long long*)addr;
234}
235
229static inline void ctrl_outb(unsigned char b, unsigned long addr) 236static inline void ctrl_outb(unsigned char b, unsigned long addr)
230{ 237{
231 *(volatile unsigned char*)addr = b; 238 *(volatile unsigned char*)addr = b;
@@ -241,6 +248,11 @@ static inline void ctrl_outl(unsigned int b, unsigned long addr)
241 *(volatile unsigned long*)addr = b; 248 *(volatile unsigned long*)addr = b;
242} 249}
243 250
251static inline void ctrl_outq(unsigned long long b, unsigned long addr)
252{
253 *(volatile unsigned long long*)addr = b;
254}
255
244static inline void ctrl_delay(void) 256static inline void ctrl_delay(void)
245{ 257{
246#ifdef P2SEG 258#ifdef P2SEG
@@ -253,7 +265,10 @@ unsigned long long peek_real_address_q(unsigned long long addr);
253unsigned long long poke_real_address_q(unsigned long long addr, 265unsigned long long poke_real_address_q(unsigned long long addr,
254 unsigned long long val); 266 unsigned long long val);
255 267
256#define IO_SPACE_LIMIT 0xffffffff 268/* arch/sh/mm/ioremap_64.c */
269unsigned long onchip_remap(unsigned long addr, unsigned long size,
270 const char *name);
271extern void onchip_unmap(unsigned long vaddr);
257 272
258#if !defined(CONFIG_MMU) 273#if !defined(CONFIG_MMU)
259#define virt_to_phys(address) ((unsigned long)(address)) 274#define virt_to_phys(address) ((unsigned long)(address))