• Home
  • Raw
  • Download

Lines Matching refs:cs

21 static int if_lock(struct cardstate *cs, int *arg)  in if_lock()  argument
25 gig_dbg(DEBUG_IF, "%u: if_lock (%d)", cs->minor_index, cmd); in if_lock()
31 *arg = cs->mstate == MS_LOCKED; in if_lock()
35 if (!cmd && cs->mstate == MS_LOCKED && cs->connected) { in if_lock()
36 cs->ops->set_modem_ctrl(cs, 0, TIOCM_DTR | TIOCM_RTS); in if_lock()
37 cs->ops->baud_rate(cs, B115200); in if_lock()
38 cs->ops->set_line_ctrl(cs, CS8); in if_lock()
39 cs->control_state = TIOCM_DTR | TIOCM_RTS; in if_lock()
42 cs->waiting = 1; in if_lock()
43 if (!gigaset_add_event(cs, &cs->at_state, EV_IF_LOCK, in if_lock()
45 cs->waiting = 0; in if_lock()
48 gigaset_schedule_event(cs); in if_lock()
50 wait_event(cs->waitqueue, !cs->waiting); in if_lock()
52 if (cs->cmd_result >= 0) { in if_lock()
53 *arg = cs->cmd_result; in if_lock()
57 return cs->cmd_result; in if_lock()
60 static int if_version(struct cardstate *cs, unsigned arg[4]) in if_version() argument
66 gig_dbg(DEBUG_IF, "%u: if_version (%d)", cs->minor_index, cmd); in if_version()
76 cs->waiting = 1; in if_version()
77 if (!gigaset_add_event(cs, &cs->at_state, EV_IF_VER, in if_version()
79 cs->waiting = 0; in if_version()
82 gigaset_schedule_event(cs); in if_version()
84 wait_event(cs->waitqueue, !cs->waiting); in if_version()
86 if (cs->cmd_result >= 0) in if_version()
89 return cs->cmd_result; in if_version()
95 static int if_config(struct cardstate *cs, int *arg) in if_config() argument
97 gig_dbg(DEBUG_IF, "%u: if_config (%d)", cs->minor_index, *arg); in if_config()
102 if (cs->mstate != MS_LOCKED) in if_config()
105 if (!cs->connected) { in if_config()
111 return gigaset_enterconfigmode(cs); in if_config()
118 struct cardstate *cs; in if_open() local
123 cs = gigaset_get_cs_by_tty(tty); in if_open()
124 if (!cs || !try_module_get(cs->driver->owner)) in if_open()
127 if (mutex_lock_interruptible(&cs->mutex)) { in if_open()
128 module_put(cs->driver->owner); in if_open()
131 tty->driver_data = cs; in if_open()
133 ++cs->port.count; in if_open()
135 if (cs->port.count == 1) { in if_open()
136 tty_port_tty_set(&cs->port, tty); in if_open()
137 cs->port.low_latency = 1; in if_open()
140 mutex_unlock(&cs->mutex); in if_open()
146 struct cardstate *cs = tty->driver_data; in if_close() local
148 if (!cs) { /* happens if we didn't find cs in open */ in if_close()
153 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_close()
155 mutex_lock(&cs->mutex); in if_close()
157 if (!cs->connected) in if_close()
159 else if (!cs->port.count) in if_close()
160 dev_warn(cs->dev, "%s: device not opened\n", __func__); in if_close()
161 else if (!--cs->port.count) in if_close()
162 tty_port_tty_set(&cs->port, NULL); in if_close()
164 mutex_unlock(&cs->mutex); in if_close()
166 module_put(cs->driver->owner); in if_close()
172 struct cardstate *cs = tty->driver_data; in if_ioctl() local
178 gig_dbg(DEBUG_IF, "%u: %s(0x%x)", cs->minor_index, __func__, cmd); in if_ioctl()
180 if (mutex_lock_interruptible(&cs->mutex)) in if_ioctl()
183 if (!cs->connected) { in if_ioctl()
192 retval = if_lock(cs, &int_arg); in if_ioctl()
199 retval = if_config(cs, &int_arg); in if_ioctl()
210 retval = cs->ops->brkchars(cs, buf); in if_ioctl()
218 retval = if_version(cs, version); in if_ioctl()
231 mutex_unlock(&cs->mutex); in if_ioctl()
238 struct cardstate *cs = tty->driver_data; in if_tiocmget() local
241 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_tiocmget()
243 if (mutex_lock_interruptible(&cs->mutex)) in if_tiocmget()
246 retval = cs->control_state & (TIOCM_RTS | TIOCM_DTR); in if_tiocmget()
248 mutex_unlock(&cs->mutex); in if_tiocmget()
256 struct cardstate *cs = tty->driver_data; in if_tiocmset() local
261 cs->minor_index, __func__, set, clear); in if_tiocmset()
263 if (mutex_lock_interruptible(&cs->mutex)) in if_tiocmset()
266 if (!cs->connected) { in if_tiocmset()
270 mc = (cs->control_state | set) & ~clear & (TIOCM_RTS | TIOCM_DTR); in if_tiocmset()
271 retval = cs->ops->set_modem_ctrl(cs, cs->control_state, mc); in if_tiocmset()
272 cs->control_state = mc; in if_tiocmset()
275 mutex_unlock(&cs->mutex); in if_tiocmset()
282 struct cardstate *cs = tty->driver_data; in if_write() local
286 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_write()
288 if (mutex_lock_interruptible(&cs->mutex)) in if_write()
291 if (!cs->connected) { in if_write()
296 if (cs->mstate != MS_LOCKED) { in if_write()
297 dev_warn(cs->dev, "can't write to unlocked device\n"); in if_write()
309 dev_err(cs->dev, "%s: out of memory\n", __func__); in if_write()
318 cb->wake_tasklet = &cs->if_wake_tasklet; in if_write()
319 retval = cs->ops->write_cmd(cs, cb); in if_write()
321 mutex_unlock(&cs->mutex); in if_write()
327 struct cardstate *cs = tty->driver_data; in if_write_room() local
330 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_write_room()
332 if (mutex_lock_interruptible(&cs->mutex)) in if_write_room()
335 if (!cs->connected) { in if_write_room()
338 } else if (cs->mstate != MS_LOCKED) { in if_write_room()
339 dev_warn(cs->dev, "can't write to unlocked device\n"); in if_write_room()
342 retval = cs->ops->write_room(cs); in if_write_room()
344 mutex_unlock(&cs->mutex); in if_write_room()
351 struct cardstate *cs = tty->driver_data; in if_chars_in_buffer() local
354 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_chars_in_buffer()
356 mutex_lock(&cs->mutex); in if_chars_in_buffer()
358 if (!cs->connected) in if_chars_in_buffer()
360 else if (cs->mstate != MS_LOCKED) in if_chars_in_buffer()
361 dev_warn(cs->dev, "can't write to unlocked device\n"); in if_chars_in_buffer()
363 retval = cs->ops->chars_in_buffer(cs); in if_chars_in_buffer()
365 mutex_unlock(&cs->mutex); in if_chars_in_buffer()
372 struct cardstate *cs = tty->driver_data; in if_throttle() local
374 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_throttle()
376 mutex_lock(&cs->mutex); in if_throttle()
378 if (!cs->connected) in if_throttle()
383 mutex_unlock(&cs->mutex); in if_throttle()
388 struct cardstate *cs = tty->driver_data; in if_unthrottle() local
390 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_unthrottle()
392 mutex_lock(&cs->mutex); in if_unthrottle()
394 if (!cs->connected) in if_unthrottle()
399 mutex_unlock(&cs->mutex); in if_unthrottle()
404 struct cardstate *cs = tty->driver_data; in if_set_termios() local
410 gig_dbg(DEBUG_IF, "%u: %s()", cs->minor_index, __func__); in if_set_termios()
412 mutex_lock(&cs->mutex); in if_set_termios()
414 if (!cs->connected) { in if_set_termios()
423 cs->minor_index, iflag, cflag, old_cflag); in if_set_termios()
426 control_state = cs->control_state; in if_set_termios()
442 cs->minor_index, in if_set_termios()
444 cs->ops->set_modem_ctrl(cs, control_state, new_state); in if_set_termios()
448 cs->ops->baud_rate(cs, cflag & CBAUD); in if_set_termios()
452 gig_dbg(DEBUG_IF, "%u: to B0 - drop DTR/RTS", cs->minor_index); in if_set_termios()
454 cs->ops->set_modem_ctrl(cs, control_state, new_state); in if_set_termios()
462 cs->ops->set_line_ctrl(cs, cflag); in if_set_termios()
465 cs->control_state = control_state; in if_set_termios()
468 mutex_unlock(&cs->mutex); in if_set_termios()
489 struct cardstate *cs = (struct cardstate *)data; in if_wake() local
491 tty_port_tty_wakeup(&cs->port); in if_wake()
496 void gigaset_if_init(struct cardstate *cs) in gigaset_if_init() argument
500 drv = cs->driver; in gigaset_if_init()
504 tasklet_init(&cs->if_wake_tasklet, if_wake, (unsigned long) cs); in gigaset_if_init()
506 mutex_lock(&cs->mutex); in gigaset_if_init()
507 cs->tty_dev = tty_port_register_device(&cs->port, drv->tty, in gigaset_if_init()
508 cs->minor_index, NULL); in gigaset_if_init()
510 if (!IS_ERR(cs->tty_dev)) in gigaset_if_init()
511 dev_set_drvdata(cs->tty_dev, cs); in gigaset_if_init()
514 cs->tty_dev = NULL; in gigaset_if_init()
516 mutex_unlock(&cs->mutex); in gigaset_if_init()
519 void gigaset_if_free(struct cardstate *cs) in gigaset_if_free() argument
523 drv = cs->driver; in gigaset_if_free()
527 tasklet_disable(&cs->if_wake_tasklet); in gigaset_if_free()
528 tasklet_kill(&cs->if_wake_tasklet); in gigaset_if_free()
529 cs->tty_dev = NULL; in gigaset_if_free()
530 tty_unregister_device(drv->tty, cs->minor_index); in gigaset_if_free()
542 void gigaset_if_receive(struct cardstate *cs, in gigaset_if_receive() argument
545 tty_insert_flip_string(&cs->port, buffer, len); in gigaset_if_receive()
546 tty_flip_buffer_push(&cs->port); in gigaset_if_receive()