diff options
Diffstat (limited to 'include/asm-sh/io.h')
-rw-r--r-- | include/asm-sh/io.h | 17 |
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 | ||
231 | static inline unsigned long long ctrl_inq(unsigned long addr) | ||
232 | { | ||
233 | return *(volatile unsigned long long*)addr; | ||
234 | } | ||
235 | |||
229 | static inline void ctrl_outb(unsigned char b, unsigned long addr) | 236 | static 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 | ||
251 | static inline void ctrl_outq(unsigned long long b, unsigned long addr) | ||
252 | { | ||
253 | *(volatile unsigned long long*)addr = b; | ||
254 | } | ||
255 | |||
244 | static inline void ctrl_delay(void) | 256 | static 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); | |||
253 | unsigned long long poke_real_address_q(unsigned long long addr, | 265 | unsigned 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 */ |
269 | unsigned long onchip_remap(unsigned long addr, unsigned long size, | ||
270 | const char *name); | ||
271 | extern 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)) |