aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn/gigaset/interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/isdn/gigaset/interface.c')
-rw-r--r--drivers/isdn/gigaset/interface.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/isdn/gigaset/interface.c b/drivers/isdn/gigaset/interface.c
index 3a81d9c65141..c225de9620b1 100644
--- a/drivers/isdn/gigaset/interface.c
+++ b/drivers/isdn/gigaset/interface.c
@@ -9,8 +9,6 @@
9 * published by the Free Software Foundation; either version 2 of 9 * published by the Free Software Foundation; either version 2 of
10 * the License, or (at your option) any later version. 10 * the License, or (at your option) any later version.
11 * ===================================================================== 11 * =====================================================================
12 * Version: $Id: interface.c,v 1.14.4.15 2006/02/04 18:28:16 hjlipp Exp $
13 * =====================================================================
14 */ 12 */
15 13
16#include "gigaset.h" 14#include "gigaset.h"
@@ -173,7 +171,6 @@ static int if_open(struct tty_struct *tty, struct file *filp)
173 cs->tty = tty; 171 cs->tty = tty;
174 spin_unlock_irqrestore(&cs->lock, flags); 172 spin_unlock_irqrestore(&cs->lock, flags);
175 tty->low_latency = 1; //FIXME test 173 tty->low_latency = 1; //FIXME test
176 //FIXME
177 } 174 }
178 175
179 up(&cs->sem); 176 up(&cs->sem);
@@ -202,7 +199,6 @@ static void if_close(struct tty_struct *tty, struct file *filp)
202 spin_lock_irqsave(&cs->lock, flags); 199 spin_lock_irqsave(&cs->lock, flags);
203 cs->tty = NULL; 200 cs->tty = NULL;
204 spin_unlock_irqrestore(&cs->lock, flags); 201 spin_unlock_irqrestore(&cs->lock, flags);
205 //FIXME
206 } 202 }
207 } 203 }
208 204
@@ -253,24 +249,26 @@ static int if_ioctl(struct tty_struct *tty, struct file *file,
253 gigaset_dbg_buffer(DEBUG_IF, "GIGASET_BRKCHARS", 249 gigaset_dbg_buffer(DEBUG_IF, "GIGASET_BRKCHARS",
254 6, (const unsigned char *) arg, 1); 250 6, (const unsigned char *) arg, 1);
255 if (!atomic_read(&cs->connected)) { 251 if (!atomic_read(&cs->connected)) {
256 dbg(DEBUG_ANY, "can't communicate with unplugged device"); 252 dbg(DEBUG_ANY,
253 "can't communicate with unplugged device");
257 retval = -ENODEV; 254 retval = -ENODEV;
258 break; 255 break;
259 } 256 }
260 retval = copy_from_user(&buf, 257 retval = copy_from_user(&buf,
261 (const unsigned char __user *) arg, 6) 258 (const unsigned char __user *) arg, 6)
262 ? -EFAULT : 0; 259 ? -EFAULT : 0;
263 if (retval >= 0) 260 if (retval >= 0)
264 retval = cs->ops->brkchars(cs, buf); 261 retval = cs->ops->brkchars(cs, buf);
265 break; 262 break;
266 case GIGASET_VERSION: 263 case GIGASET_VERSION:
267 retval = copy_from_user(version, (unsigned __user *) arg, 264 retval = copy_from_user(version,
265 (unsigned __user *) arg,
268 sizeof version) ? -EFAULT : 0; 266 sizeof version) ? -EFAULT : 0;
269 if (retval >= 0) 267 if (retval >= 0)
270 retval = if_version(cs, version); 268 retval = if_version(cs, version);
271 if (retval >= 0) 269 if (retval >= 0)
272 retval = copy_to_user((unsigned __user *) arg, version, 270 retval = copy_to_user((unsigned __user *) arg,
273 sizeof version) 271 version, sizeof version)
274 ? -EFAULT : 0; 272 ? -EFAULT : 0;
275 break; 273 break;
276 default: 274 default:
@@ -575,7 +573,7 @@ static void if_set_termios(struct tty_struct *tty, struct termios *old)
575 new_state &= ~(TIOCM_DTR | TIOCM_RTS); 573 new_state &= ~(TIOCM_DTR | TIOCM_RTS);
576 if (new_state != control_state) { 574 if (new_state != control_state) {
577 dbg(DEBUG_IF, "%u: new_state %x", cs->minor_index, new_state); 575 dbg(DEBUG_IF, "%u: new_state %x", cs->minor_index, new_state);
578 gigaset_set_modem_ctrl(cs, control_state, new_state); // FIXME: mct_u232.c sets the old state here. is this a bug? 576 gigaset_set_modem_ctrl(cs, control_state, new_state);
579 control_state = new_state; 577 control_state = new_state;
580 } 578 }
581#endif 579#endif