| Atsushi Nemoto | 5ddcb3c | 2007-06-26 01:14:01 +0900 | [diff] [blame] | 1 | /* | 
 | 2 |  *	include/asm-mips/mach-tx49xx/ioremap.h | 
 | 3 |  * | 
 | 4 |  *	This program is free software; you can redistribute it and/or | 
 | 5 |  *	modify it under the terms of the GNU General Public License | 
 | 6 |  *	as published by the Free Software Foundation; either version | 
 | 7 |  *	2 of the License, or (at your option) any later version. | 
 | 8 |  */ | 
 | 9 | #ifndef __ASM_MACH_TX49XX_IOREMAP_H | 
 | 10 | #define __ASM_MACH_TX49XX_IOREMAP_H | 
 | 11 |  | 
 | 12 | #include <linux/types.h> | 
 | 13 |  | 
 | 14 | /* | 
 | 15 |  * Allow physical addresses to be fixed up to help peripherals located | 
 | 16 |  * outside the low 32-bit range -- generic pass-through version. | 
 | 17 |  */ | 
 | 18 | static inline phys_t fixup_bigphys_addr(phys_t phys_addr, phys_t size) | 
 | 19 | { | 
 | 20 | 	return phys_addr; | 
 | 21 | } | 
 | 22 |  | 
 | 23 | static inline void __iomem *plat_ioremap(phys_t offset, unsigned long size, | 
 | 24 | 	unsigned long flags) | 
 | 25 | { | 
 | 26 | #ifdef CONFIG_64BIT | 
 | 27 | #define TXX9_DIRECTMAP_BASE	0xfff000000ul | 
 | 28 | #else | 
 | 29 | #define TXX9_DIRECTMAP_BASE	0xff000000ul | 
 | 30 | #endif | 
 | 31 | 	if (offset >= TXX9_DIRECTMAP_BASE && | 
 | 32 | 	    offset < TXX9_DIRECTMAP_BASE + 0x400000) | 
 | 33 | 		return (void __iomem *)(unsigned long)(int)offset; | 
 | 34 | 	return NULL; | 
 | 35 | } | 
 | 36 |  | 
 | 37 | static inline int plat_iounmap(const volatile void __iomem *addr) | 
 | 38 | { | 
| Atsushi Nemoto | f24ae12 | 2007-07-14 00:06:44 +0900 | [diff] [blame] | 39 | 	return (unsigned long)addr >= | 
 | 40 | 		(unsigned long)(int)(TXX9_DIRECTMAP_BASE & 0xffffffff); | 
| Atsushi Nemoto | 5ddcb3c | 2007-06-26 01:14:01 +0900 | [diff] [blame] | 41 | } | 
 | 42 |  | 
 | 43 | #endif /* __ASM_MACH_TX49XX_IOREMAP_H */ |