1 /*
2  *  arch/arm/mach-footbridge/include/mach/io.h
3  *
4  *  Copyright (C) 1997-1999 Russell King
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  *
10  *  Modifications:
11  *   06-12-1997	RMK	Created.
12  *   07-04-1999	RMK	Major cleanup
13  */
14 #ifndef __ASM_ARM_ARCH_IO_H
15 #define __ASM_ARM_ARCH_IO_H
16 
17 #ifdef CONFIG_MMU
18 #define MMU_IO(a, b)	(a)
19 #else
20 #define MMU_IO(a, b)	(b)
21 #endif
22 
23 #define PCIO_SIZE       0x00100000
24 #define PCIO_BASE       MMU_IO(0xff000000, 0x7c000000)
25 
26 /*
27  * Translation of various region addresses to virtual addresses
28  */
29 #define __io(a)			((void __iomem *)(PCIO_BASE + (a)))
30 #if 1
31 #define __mem_pci(a)		(a)
32 #else
33 
___mem_pci(void __iomem * p)34 static inline void __iomem *___mem_pci(void __iomem *p)
35 {
36 	unsigned long a = (unsigned long)p;
37 	BUG_ON(a <= 0xc0000000 || a >= 0xe0000000);
38 	return p;
39 }
40 
41 #define __mem_pci(a)		___mem_pci(a)
42 #endif
43 
44 #endif
45