Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-static void rc_put_char(struct tty_struct * tty, unsigned char ch)
+static int rc_put_char(struct tty_struct * tty, unsigned char ch)
{
struct riscom_port *port = (struct riscom_port *)tty->driver_data;
unsigned long flags;
{
struct riscom_port *port = (struct riscom_port *)tty->driver_data;
unsigned long flags;
if (rc_paranoia_check(port, tty->name, "rc_put_char"))
if (rc_paranoia_check(port, tty->name, "rc_put_char"))
if (!tty || !port->xmit_buf)
if (!tty || !port->xmit_buf)
spin_lock_irqsave(&riscom_lock, flags);
spin_lock_irqsave(&riscom_lock, flags);
port->xmit_buf[port->xmit_head++] = ch;
port->xmit_head &= SERIAL_XMIT_SIZE - 1;
port->xmit_cnt++;
port->xmit_buf[port->xmit_head++] = ch;
port->xmit_head &= SERIAL_XMIT_SIZE - 1;
port->xmit_cnt++;
out:
spin_unlock_irqrestore(&riscom_lock, flags);
out:
spin_unlock_irqrestore(&riscom_lock, flags);
}
static void rc_flush_chars(struct tty_struct * tty)
}
static void rc_flush_chars(struct tty_struct * tty)
* writing routines will write directly to transmit FIFO.
* Write buffer and counters protected by spinlocks
*/
* writing routines will write directly to transmit FIFO.
* Write buffer and counters protected by spinlocks
*/
-static void rp_put_char(struct tty_struct *tty, unsigned char ch)
+static int rp_put_char(struct tty_struct *tty, unsigned char ch)
{
struct r_port *info = (struct r_port *) tty->driver_data;
CHANNEL_t *cp;
unsigned long flags;
if (rocket_paranoia_check(info, "rp_put_char"))
{
struct r_port *info = (struct r_port *) tty->driver_data;
CHANNEL_t *cp;
unsigned long flags;
if (rocket_paranoia_check(info, "rp_put_char"))
/*
* Grab the port write mutex, locking out other processes that try to
/*
* Grab the port write mutex, locking out other processes that try to
}
spin_unlock_irqrestore(&info->slock, flags);
mutex_unlock(&info->write_mtx);
}
spin_unlock_irqrestore(&info->slock, flags);
mutex_unlock(&info->write_mtx);