diff options
Diffstat (limited to 'drivers/char/riscom8.c')
-rw-r--r-- | drivers/char/riscom8.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/char/riscom8.c b/drivers/char/riscom8.c index a82c2a2d5e6c..221b5a292076 100644 --- a/drivers/char/riscom8.c +++ b/drivers/char/riscom8.c | |||
@@ -1161,16 +1161,17 @@ static int rc_write(struct tty_struct * tty, | |||
1161 | return total; | 1161 | return total; |
1162 | } | 1162 | } |
1163 | 1163 | ||
1164 | static void rc_put_char(struct tty_struct * tty, unsigned char ch) | 1164 | static int rc_put_char(struct tty_struct * tty, unsigned char ch) |
1165 | { | 1165 | { |
1166 | struct riscom_port *port = (struct riscom_port *)tty->driver_data; | 1166 | struct riscom_port *port = (struct riscom_port *)tty->driver_data; |
1167 | unsigned long flags; | 1167 | unsigned long flags; |
1168 | int ret = 0; | ||
1168 | 1169 | ||
1169 | if (rc_paranoia_check(port, tty->name, "rc_put_char")) | 1170 | if (rc_paranoia_check(port, tty->name, "rc_put_char")) |
1170 | return; | 1171 | return 0; |
1171 | 1172 | ||
1172 | if (!tty || !port->xmit_buf) | 1173 | if (!tty || !port->xmit_buf) |
1173 | return; | 1174 | return 0; |
1174 | 1175 | ||
1175 | spin_lock_irqsave(&riscom_lock, flags); | 1176 | spin_lock_irqsave(&riscom_lock, flags); |
1176 | 1177 | ||
@@ -1180,9 +1181,11 @@ static void rc_put_char(struct tty_struct * tty, unsigned char ch) | |||
1180 | port->xmit_buf[port->xmit_head++] = ch; | 1181 | port->xmit_buf[port->xmit_head++] = ch; |
1181 | port->xmit_head &= SERIAL_XMIT_SIZE - 1; | 1182 | port->xmit_head &= SERIAL_XMIT_SIZE - 1; |
1182 | port->xmit_cnt++; | 1183 | port->xmit_cnt++; |
1184 | ret = 1; | ||
1183 | 1185 | ||
1184 | out: | 1186 | out: |
1185 | spin_unlock_irqrestore(&riscom_lock, flags); | 1187 | spin_unlock_irqrestore(&riscom_lock, flags); |
1188 | return ret; | ||
1186 | } | 1189 | } |
1187 | 1190 | ||
1188 | static void rc_flush_chars(struct tty_struct * tty) | 1191 | static void rc_flush_chars(struct tty_struct * tty) |