aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/tty_driver.h
diff options
context:
space:
mode:
authorAlan Cox <alan@lxorguk.ukuu.org.uk>2006-12-08 05:38:44 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-08 11:28:56 -0500
commitedc6afc5496875a640bef0913604be7550c1795d (patch)
treeb05cd34a9a0d71edc9d6d7487ad551f0e15887b8 /include/linux/tty_driver.h
parentbe90038a24c814dc98bc5a813f41855779000018 (diff)
[PATCH] tty: switch to ktermios and new framework
This is the core of the switch to the new framework. I've split it from the driver patches which are mostly search/replace and would encourage people to give this one a good hard stare. The references to BOTHER and ISHIFT are the termios values that must be defined by a platform once it wants to turn on "new style" ioctl support. The code patches here ensure that providing 1. The termios overlays the ktermios in memory 2. The only new kernel only fields are c_ispeed/c_ospeed (or none) the existing behaviour is retained. This is true for the patches at this point in time. Future patches will define BOTHER, ISHIFT and enable newer termios structures for each architecture, and once they are all done some of the ifdefs also vanish. [akpm@osdl.org: warning fix] [akpm@osdl.org: IRDA fix] Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/tty_driver.h')
-rw-r--r--include/linux/tty_driver.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/include/linux/tty_driver.h b/include/linux/tty_driver.h
index 5c8473bb6882..659487e3ebeb 100644
--- a/include/linux/tty_driver.h
+++ b/include/linux/tty_driver.h
@@ -53,7 +53,7 @@
53 * device-specific ioctl's. If the ioctl number passed in cmd 53 * device-specific ioctl's. If the ioctl number passed in cmd
54 * is not recognized by the driver, it should return ENOIOCTLCMD. 54 * is not recognized by the driver, it should return ENOIOCTLCMD.
55 * 55 *
56 * void (*set_termios)(struct tty_struct *tty, struct termios * old); 56 * void (*set_termios)(struct tty_struct *tty, struct ktermios * old);
57 * 57 *
58 * This routine allows the tty driver to be notified when 58 * This routine allows the tty driver to be notified when
59 * device's termios settings have changed. Note that a 59 * device's termios settings have changed. Note that a
@@ -132,7 +132,7 @@ struct tty_operations {
132 int (*chars_in_buffer)(struct tty_struct *tty); 132 int (*chars_in_buffer)(struct tty_struct *tty);
133 int (*ioctl)(struct tty_struct *tty, struct file * file, 133 int (*ioctl)(struct tty_struct *tty, struct file * file,
134 unsigned int cmd, unsigned long arg); 134 unsigned int cmd, unsigned long arg);
135 void (*set_termios)(struct tty_struct *tty, struct termios * old); 135 void (*set_termios)(struct tty_struct *tty, struct ktermios * old);
136 void (*throttle)(struct tty_struct * tty); 136 void (*throttle)(struct tty_struct * tty);
137 void (*unthrottle)(struct tty_struct * tty); 137 void (*unthrottle)(struct tty_struct * tty);
138 void (*stop)(struct tty_struct *tty); 138 void (*stop)(struct tty_struct *tty);
@@ -165,7 +165,7 @@ struct tty_driver {
165 int num; /* number of devices allocated */ 165 int num; /* number of devices allocated */
166 short type; /* type of tty driver */ 166 short type; /* type of tty driver */
167 short subtype; /* subtype of tty driver */ 167 short subtype; /* subtype of tty driver */
168 struct termios init_termios; /* Initial termios */ 168 struct ktermios init_termios; /* Initial termios */
169 int flags; /* tty driver flags */ 169 int flags; /* tty driver flags */
170 int refcount; /* for loadable tty drivers */ 170 int refcount; /* for loadable tty drivers */
171 struct proc_dir_entry *proc_entry; /* /proc fs entry */ 171 struct proc_dir_entry *proc_entry; /* /proc fs entry */
@@ -175,8 +175,8 @@ struct tty_driver {
175 * Pointer to the tty data structures 175 * Pointer to the tty data structures
176 */ 176 */
177 struct tty_struct **ttys; 177 struct tty_struct **ttys;
178 struct termios **termios; 178 struct ktermios **termios;
179 struct termios **termios_locked; 179 struct ktermios **termios_locked;
180 void *driver_state; /* only used for the PTY driver */ 180 void *driver_state; /* only used for the PTY driver */
181 181
182 /* 182 /*
@@ -193,7 +193,7 @@ struct tty_driver {
193 int (*chars_in_buffer)(struct tty_struct *tty); 193 int (*chars_in_buffer)(struct tty_struct *tty);
194 int (*ioctl)(struct tty_struct *tty, struct file * file, 194 int (*ioctl)(struct tty_struct *tty, struct file * file,
195 unsigned int cmd, unsigned long arg); 195 unsigned int cmd, unsigned long arg);
196 void (*set_termios)(struct tty_struct *tty, struct termios * old); 196 void (*set_termios)(struct tty_struct *tty, struct ktermios * old);
197 void (*throttle)(struct tty_struct * tty); 197 void (*throttle)(struct tty_struct * tty);
198 void (*unthrottle)(struct tty_struct * tty); 198 void (*unthrottle)(struct tty_struct * tty);
199 void (*stop)(struct tty_struct *tty); 199 void (*stop)(struct tty_struct *tty);