Merge tag 'tty-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
Pull tty/serial driver update from Greg Kroah-Hartman: "Here's the big tty/serial driver merge request for 3.10-rc1 Once again, Jiri has a number of TTY driver fixes and cleanups, and Peter Hurley came through with a bunch of ldisc fixes that resolve a number of reported issues. There are some other serial driver cleanups as well. All of these have been in the linux-next tree for a while" * tag 'tty-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (117 commits) tty/serial/sirf: fix MODULE_DEVICE_TABLE serial: mxs: drop superfluous {get|put}_device serial: mxs: fix buffer overflow ARM: PL011: add support for extended FIFO-size of PL011-r1p5 serial_core.c: add put_device() after device_find_child() tty: Fix unsafe bit ops in tty_throttle_safe/unthrottle_safe serial: sccnxp: Replace pdata.init/exit with regulator API serial: sccnxp: Do not override device name TTY: pty, fix compilation warning TTY: rocket, fix compilation warning TTY: ircomm: fix DTR being raised on hang up TTY: synclinkmp: fix DTR being raised on hang up TTY: synclink_gt: fix DTR being raised on hang up TTY: synclink: fix DTR being raised on hang up serial: 8250_dw: Fix the stub for dw8250_probe_acpi() serial: 8250_dw: Convert to devm_ioremap() serial: 8250_dw: Set port capabilities based on CPR register serial: 8250_dw: Let ACPI code extract the DMA client info serial: 8250_dw: Support clk framework also with ACPI serial: 8250_dw: Enable runtime PM ...
This commit is contained in:
@@ -142,8 +142,7 @@ static void transmit_chars(struct tty_struct *tty, struct serial_state *info,
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (info->xmit.head == info->xmit.tail || tty->stopped ||
|
||||
tty->hw_stopped) {
|
||||
if (info->xmit.head == info->xmit.tail || tty->stopped) {
|
||||
#ifdef SIMSERIAL_DEBUG
|
||||
printk("transmit_chars: head=%d, tail=%d, stopped=%d\n",
|
||||
info->xmit.head, info->xmit.tail, tty->stopped);
|
||||
@@ -181,7 +180,7 @@ static void rs_flush_chars(struct tty_struct *tty)
|
||||
struct serial_state *info = tty->driver_data;
|
||||
|
||||
if (info->xmit.head == info->xmit.tail || tty->stopped ||
|
||||
tty->hw_stopped || !info->xmit.buf)
|
||||
!info->xmit.buf)
|
||||
return;
|
||||
|
||||
transmit_chars(tty, info, NULL);
|
||||
@@ -217,7 +216,7 @@ static int rs_write(struct tty_struct * tty,
|
||||
* Hey, we transmit directly from here in our case
|
||||
*/
|
||||
if (CIRC_CNT(info->xmit.head, info->xmit.tail, SERIAL_XMIT_SIZE) &&
|
||||
!tty->stopped && !tty->hw_stopped)
|
||||
!tty->stopped)
|
||||
transmit_chars(tty, info, NULL);
|
||||
|
||||
return ret;
|
||||
@@ -325,14 +324,6 @@ static int rs_ioctl(struct tty_struct *tty, unsigned int cmd, unsigned long arg)
|
||||
|
||||
#define RELEVANT_IFLAG(iflag) (iflag & (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK))
|
||||
|
||||
static void rs_set_termios(struct tty_struct *tty, struct ktermios *old_termios)
|
||||
{
|
||||
/* Handle turning off CRTSCTS */
|
||||
if ((old_termios->c_cflag & CRTSCTS) &&
|
||||
!(tty->termios.c_cflag & CRTSCTS)) {
|
||||
tty->hw_stopped = 0;
|
||||
}
|
||||
}
|
||||
/*
|
||||
* This routine will shutdown a serial port; interrupts are disabled, and
|
||||
* DTR is dropped if the hangup on close termio flag is on.
|
||||
@@ -481,7 +472,6 @@ static const struct tty_operations hp_ops = {
|
||||
.throttle = rs_throttle,
|
||||
.unthrottle = rs_unthrottle,
|
||||
.send_xchar = rs_send_xchar,
|
||||
.set_termios = rs_set_termios,
|
||||
.hangup = rs_hangup,
|
||||
.proc_fops = &rs_proc_fops,
|
||||
};
|
||||
|
Reference in New Issue
Block a user