Linux-2.6.12-rc2
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / include / asm-ppc / mpc8260_pci9.h
1 /* include/asm-ppc/mpc8260_pci9.h
2 *
3 * Undefine the PCI read* and in* macros so we can define them as functions
4 * that implement the workaround for the MPC8260 device erratum PCI 9.
5 *
6 * This header file should only be included at the end of include/asm-ppc/io.h
7 * and never included directly anywhere else.
8 *
9 * Author: andy_lowe@mvista.com
10 *
11 * 2003 (c) MontaVista Software, Inc. This file is licensed under
12 * the terms of the GNU General Public License version 2. This program
13 * is licensed "as is" without any warranty of any kind, whether express
14 * or implied.
15 */
16 #ifndef _PPC_IO_H
17 #error "Do not include mpc8260_pci9.h directly."
18 #endif
19
20 #ifdef __KERNEL__
21 #ifndef __CONFIG_8260_PCI9_DEFS
22 #define __CONFIG_8260_PCI9_DEFS
23
24 #undef readb
25 #undef readw
26 #undef readl
27 #undef insb
28 #undef insw
29 #undef insl
30 #undef inb
31 #undef inw
32 #undef inl
33 #undef insw_ns
34 #undef insl_ns
35 #undef memcpy_fromio
36
37 extern int readb(volatile unsigned char *addr);
38 extern int readw(volatile unsigned short *addr);
39 extern unsigned readl(volatile unsigned *addr);
40 extern void insb(unsigned port, void *buf, int ns);
41 extern void insw(unsigned port, void *buf, int ns);
42 extern void insl(unsigned port, void *buf, int nl);
43 extern int inb(unsigned port);
44 extern int inw(unsigned port);
45 extern unsigned inl(unsigned port);
46 extern void insw_ns(unsigned port, void *buf, int ns);
47 extern void insl_ns(unsigned port, void *buf, int nl);
48 extern void *memcpy_fromio(void *dest, unsigned long src, size_t count);
49
50 #endif /* !__CONFIG_8260_PCI9_DEFS */
51 #endif /* __KERNEL__ */