1 /*
2  * linux/include/asm-sh/io_microdev.h
3  *
4  * Copyright (C) 2003 Sean McGoogan (Sean.McGoogan@superh.com)
5  *
6  * IO functions for the SuperH SH4-202 MicroDev board.
7  *
8  * May be copied or modified under the terms of the GNU General Public
9  * License.  See linux/COPYING for more information.
10  *
11  */
12 
13 
14 #ifndef _ASM_SH_IO_MICRODEV_H
15 #define _ASM_SH_IO_MICRODEV_H
16 
17 #include <asm/io_generic.h>
18 
19 extern unsigned long microdev_isa_port2addr(unsigned long offset);
20 
21 extern unsigned char microdev_inb(unsigned long port);
22 extern unsigned short microdev_inw(unsigned long port);
23 extern unsigned int microdev_inl(unsigned long port);
24 
25 extern void microdev_outb(unsigned char value, unsigned long port);
26 extern void microdev_outw(unsigned short value, unsigned long port);
27 extern void microdev_outl(unsigned int value, unsigned long port);
28 
29 extern unsigned char microdev_inb_p(unsigned long port);
30 extern unsigned short microdev_inw_p(unsigned long port);
31 extern unsigned int microdev_inl_p(unsigned long port);
32 
33 extern void microdev_outb_p(unsigned char value, unsigned long port);
34 extern void microdev_outw_p(unsigned short value, unsigned long port);
35 extern void microdev_outl_p(unsigned int value, unsigned long port);
36 
37 extern void microdev_insb(unsigned long port, void *addr, unsigned long count);
38 extern void microdev_insw(unsigned long port, void *addr, unsigned long count);
39 extern void microdev_insl(unsigned long port, void *addr, unsigned long count);
40 
41 extern void microdev_outsb(unsigned long port, const void *addr, unsigned long count);
42 extern void microdev_outsw(unsigned long port, const void *addr, unsigned long count);
43 extern void microdev_outsl(unsigned long port, const void *addr, unsigned long count);
44 
45 #ifdef __WANT_IO_DEF
46 
47 # define __inb			microdev_inb
48 # define __inw			microdev_inw
49 # define __inl			microdev_inl
50 # define __outb			microdev_outb
51 # define __outw			microdev_outw
52 # define __outl			microdev_outl
53 
54 # define __inb_p		microdev_inb_p
55 # define __inw_p		microdev_inw_p
56 # define __inl_p		microdev_inl_p
57 # define __outb_p		microdev_outb_p
58 # define __outw_p		microdev_outw_p
59 # define __outl_p		microdev_outl_p
60 
61 # define __insb			microdev_insb
62 # define __insw			microdev_insw
63 # define __insl			microdev_insl
64 # define __outsb		microdev_outsb
65 # define __outsw		microdev_outsw
66 # define __outsl		microdev_outsl
67 
68 # define __readb		generic_readb
69 # define __readw		generic_readw
70 # define __readl		generic_readl
71 # define __writeb		generic_writeb
72 # define __writew		generic_writew
73 # define __writel		generic_writel
74 
75 # define __isa_port2addr	microdev_isa_port2addr
76 # define __ioremap		generic_ioremap
77 # define __iounmap		generic_iounmap
78 
79 #endif
80 
81 #endif /* _ASM_SH_IO_MICRODEV_H */
82 
83