Linux-2.6.12-rc2
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / char / rio / linux_compat.h
blobd53843abe02d70ecb35fcd7df4eff52418330b76
1 /*
2 * (C) 2000 R.E.Wolff@BitWizard.nl
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 #include <linux/interrupt.h>
22 #define disable(oldspl) save_flags (oldspl)
23 #define restore(oldspl) restore_flags (oldspl)
25 #define sysbrk(x) kmalloc ((x),in_interrupt()? GFP_ATOMIC : GFP_KERNEL)
26 #define sysfree(p,size) kfree ((p))
28 #define WBYTE(p,v) writeb(v, &p)
29 #define RBYTE(p) readb (&p)
30 #define WWORD(p,v) writew(v, &p)
31 #define RWORD(p) readw(&p)
32 #define WINDW(p,v) writew(v, p)
33 #define RINDW(p) readw(p)
35 #define DEBUG_ALL
37 #define cprintf printk
39 #ifdef __KERNEL__
40 #define INKERNEL
41 #endif
43 struct ttystatics {
44 struct termios tm;
47 #define bzero(d, n) memset((d), 0, (n))
48 #define bcopy(src, dest, n) memcpy ((dest), (src), (n))
50 #define SEM_SIGIGNORE 0x1234
52 #ifdef DEBUG_SEM
53 #define swait(a,b) printk ("waiting: " __FILE__ " line %d\n", __LINE__)
54 #define ssignal(sem) printk ("signalling: " __FILE__ " line %d\n", __LINE__)
56 #define sreset(sem) printk ("sreset: " __FILE__ "\n")
57 #define sem_init(sem,v) printk ("sreset: " __FILE__ "\n")
58 #endif
61 #define getpid() (current->pid)
63 #define QSIZE SERIAL_XMIT_SIZE
65 #define pseterr(errno) return (- errno)
67 #define V_CBAUD CBAUD
69 /* For one reason or another rioboot.c uses delay instead of RIODelay. */
70 #define delay(x,y) RIODelay(NULL, y)
72 extern int rio_debug;
74 #define RIO_DEBUG_INIT 0x000001
75 #define RIO_DEBUG_BOOT 0x000002
76 #define RIO_DEBUG_CMD 0x000004
77 #define RIO_DEBUG_CTRL 0x000008
78 #define RIO_DEBUG_INTR 0x000010
79 #define RIO_DEBUG_PARAM 0x000020
80 #define RIO_DEBUG_ROUTE 0x000040
81 #define RIO_DEBUG_TABLE 0x000080
82 #define RIO_DEBUG_TTY 0x000100
83 #define RIO_DEBUG_FLOW 0x000200
84 #define RIO_DEBUG_MODEMSIGNALS 0x000400
85 #define RIO_DEBUG_PROBE 0x000800
86 #define RIO_DEBUG_CLEANUP 0x001000
87 #define RIO_DEBUG_IFLOW 0x002000
88 #define RIO_DEBUG_PFE 0x004000
89 #define RIO_DEBUG_REC 0x008000
90 #define RIO_DEBUG_SPINLOCK 0x010000
91 #define RIO_DEBUG_DELAY 0x020000
92 #define RIO_DEBUG_MOD_COUNT 0x040000
94 /* Copied over from riowinif.h . This is ugly. The winif file declares
95 also much other stuff which is incompatible with the headers from
96 the older driver. The older driver includes "brates.h" which shadows
97 the definitions from Linux, and is incompatible... */
99 /* RxBaud and TxBaud definitions... */
100 #define RIO_B0 0x00 /* RTS / DTR signals dropped */
101 #define RIO_B50 0x01 /* 50 baud */
102 #define RIO_B75 0x02 /* 75 baud */
103 #define RIO_B110 0x03 /* 110 baud */
104 #define RIO_B134 0x04 /* 134.5 baud */
105 #define RIO_B150 0x05 /* 150 baud */
106 #define RIO_B200 0x06 /* 200 baud */
107 #define RIO_B300 0x07 /* 300 baud */
108 #define RIO_B600 0x08 /* 600 baud */
109 #define RIO_B1200 0x09 /* 1200 baud */
110 #define RIO_B1800 0x0A /* 1800 baud */
111 #define RIO_B2400 0x0B /* 2400 baud */
112 #define RIO_B4800 0x0C /* 4800 baud */
113 #define RIO_B9600 0x0D /* 9600 baud */
114 #define RIO_B19200 0x0E /* 19200 baud */
115 #define RIO_B38400 0x0F /* 38400 baud */
116 #define RIO_B56000 0x10 /* 56000 baud */
117 #define RIO_B57600 0x11 /* 57600 baud */
118 #define RIO_B64000 0x12 /* 64000 baud */
119 #define RIO_B115200 0x13 /* 115200 baud */
120 #define RIO_B2000 0x14 /* 2000 baud */