diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/irda/ircomm/ircomm_tty.c | 2 | ||||
-rw-r--r-- | net/irda/ircomm/ircomm_tty_attach.c | 6 |
2 files changed, 2 insertions, 6 deletions
diff --git a/net/irda/ircomm/ircomm_tty.c b/net/irda/ircomm/ircomm_tty.c index 362ba47968e4..41ac7938268b 100644 --- a/net/irda/ircomm/ircomm_tty.c +++ b/net/irda/ircomm/ircomm_tty.c | |||
@@ -328,7 +328,7 @@ static int ircomm_tty_block_til_ready(struct ircomm_tty_cb *self, | |||
328 | spin_unlock_irqrestore(&port->lock, flags); | 328 | spin_unlock_irqrestore(&port->lock, flags); |
329 | 329 | ||
330 | while (1) { | 330 | while (1) { |
331 | if (tty->termios.c_cflag & CBAUD) | 331 | if (C_BAUD(tty) && test_bit(ASYNCB_INITIALIZED, &port->flags)) |
332 | tty_port_raise_dtr_rts(port); | 332 | tty_port_raise_dtr_rts(port); |
333 | 333 | ||
334 | set_current_state(TASK_INTERRUPTIBLE); | 334 | set_current_state(TASK_INTERRUPTIBLE); |
diff --git a/net/irda/ircomm/ircomm_tty_attach.c b/net/irda/ircomm/ircomm_tty_attach.c index edab393e0c82..a2a508f5f268 100644 --- a/net/irda/ircomm/ircomm_tty_attach.c +++ b/net/irda/ircomm/ircomm_tty_attach.c | |||
@@ -997,12 +997,8 @@ static int ircomm_tty_state_ready(struct ircomm_tty_cb *self, | |||
997 | self->settings.dce = IRCOMM_DELTA_CD; | 997 | self->settings.dce = IRCOMM_DELTA_CD; |
998 | ircomm_tty_check_modem_status(self); | 998 | ircomm_tty_check_modem_status(self); |
999 | } else { | 999 | } else { |
1000 | struct tty_struct *tty = tty_port_tty_get(&self->port); | ||
1001 | IRDA_DEBUG(0, "%s(), hanging up!\n", __func__ ); | 1000 | IRDA_DEBUG(0, "%s(), hanging up!\n", __func__ ); |
1002 | if (tty) { | 1001 | tty_port_tty_hangup(&self->port, false); |
1003 | tty_hangup(tty); | ||
1004 | tty_kref_put(tty); | ||
1005 | } | ||
1006 | } | 1002 | } |
1007 | break; | 1003 | break; |
1008 | default: | 1004 | default: |