diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-11-14 00:05:31 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-11-14 00:05:31 -0500 |
commit | fb0255fb2941ef6f21742b2bc146d6b9aef4fedc (patch) | |
tree | 8334f3485152b1c887ddfe04ba9a95c8a704481c /drivers/tty/serial/omap-serial.c | |
parent | 449fcf3ab0baf3dde9952385e6789f2ca10c3980 (diff) | |
parent | 57f5d648c45c3d40a3257c06629c14fd53c383bc (diff) |
Merge tag 'tty-4.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
Pull tty/serial updates from Greg KH:
"Here is the big tty/serial driver pull request for 4.15-rc1.
Lots of serial driver updates in here, some small vt cleanups, and a
raft of SPDX and license boilerplate cleanups, messing up the diffstat
a bit.
Nothing major, with no realy functional changes except better hardware
support for some platforms.
All of these have been in linux-next for a while with no reported
issues"
* tag 'tty-4.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (110 commits)
tty: ehv_bytechan: fix spelling mistake
tty: serial: meson: allow baud-rates lower than 9600
serial: 8250_fintek: Fix crash with baud rate B0
serial: 8250_fintek: Disable delays for ports != 0
serial: 8250_fintek: Return -EINVAL on invalid configuration
tty: Remove redundant license text
tty: serdev: Remove redundant license text
tty: hvc: Remove redundant license text
tty: serial: Remove redundant license text
tty: add SPDX identifiers to all remaining files in drivers/tty/
tty: serial: jsm: remove redundant pointer ts
tty: serial: jsm: add space before the open parenthesis '('
tty: serial: jsm: fix coding style
tty: serial: jsm: delete space between function name and '('
tty: serial: jsm: add blank line after declarations
tty: serial: jsm: change the type of local variable
tty: serial: imx: remove dead code imx_dma_rxint
tty: serial: imx: disable ageing timer interrupt if dma in use
serial: 8250: fix potential deadlock in rs485-mode
serial: m32r_sio: Drop redundant .data assignment
...
Diffstat (limited to 'drivers/tty/serial/omap-serial.c')
-rw-r--r-- | drivers/tty/serial/omap-serial.c | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c index 7754053deeda..53d59e9b944a 100644 --- a/drivers/tty/serial/omap-serial.c +++ b/drivers/tty/serial/omap-serial.c | |||
@@ -1,3 +1,4 @@ | |||
1 | // SPDX-License-Identifier: GPL-2.0+ | ||
1 | /* | 2 | /* |
2 | * Driver for OMAP-UART controller. | 3 | * Driver for OMAP-UART controller. |
3 | * Based on drivers/serial/8250.c | 4 | * Based on drivers/serial/8250.c |
@@ -8,11 +9,6 @@ | |||
8 | * Govindraj R <govindraj.raja@ti.com> | 9 | * Govindraj R <govindraj.raja@ti.com> |
9 | * Thara Gopinath <thara@ti.com> | 10 | * Thara Gopinath <thara@ti.com> |
10 | * | 11 | * |
11 | * This program is free software; you can redistribute it and/or modify | ||
12 | * it under the terms of the GNU General Public License as published by | ||
13 | * the Free Software Foundation; either version 2 of the License, or | ||
14 | * (at your option) any later version. | ||
15 | * | ||
16 | * Note: This driver is made separate from 8250 driver as we cannot | 12 | * Note: This driver is made separate from 8250 driver as we cannot |
17 | * over load 8250 driver with omap platform specific configuration for | 13 | * over load 8250 driver with omap platform specific configuration for |
18 | * features like DMA, it makes easier to implement features like DMA and | 14 | * features like DMA, it makes easier to implement features like DMA and |
@@ -610,7 +606,7 @@ static irqreturn_t serial_omap_irq(int irq, void *dev_id) | |||
610 | default: | 606 | default: |
611 | break; | 607 | break; |
612 | } | 608 | } |
613 | } while (!(iir & UART_IIR_NO_INT) && max_count--); | 609 | } while (max_count--); |
614 | 610 | ||
615 | spin_unlock(&up->port.lock); | 611 | spin_unlock(&up->port.lock); |
616 | 612 | ||
@@ -693,7 +689,7 @@ static void serial_omap_set_mctrl(struct uart_port *port, unsigned int mctrl) | |||
693 | if ((mctrl & TIOCM_RTS) && (port->status & UPSTAT_AUTORTS)) | 689 | if ((mctrl & TIOCM_RTS) && (port->status & UPSTAT_AUTORTS)) |
694 | up->efr |= UART_EFR_RTS; | 690 | up->efr |= UART_EFR_RTS; |
695 | else | 691 | else |
696 | up->efr &= UART_EFR_RTS; | 692 | up->efr &= ~UART_EFR_RTS; |
697 | serial_out(up, UART_EFR, up->efr); | 693 | serial_out(up, UART_EFR, up->efr); |
698 | serial_out(up, UART_LCR, lcr); | 694 | serial_out(up, UART_LCR, lcr); |
699 | 695 | ||
@@ -1606,7 +1602,6 @@ static int serial_omap_probe_rs485(struct uart_omap_port *up, | |||
1606 | struct device_node *np) | 1602 | struct device_node *np) |
1607 | { | 1603 | { |
1608 | struct serial_rs485 *rs485conf = &up->port.rs485; | 1604 | struct serial_rs485 *rs485conf = &up->port.rs485; |
1609 | u32 rs485_delay[2]; | ||
1610 | enum of_gpio_flags flags; | 1605 | enum of_gpio_flags flags; |
1611 | int ret; | 1606 | int ret; |
1612 | 1607 | ||
@@ -1637,17 +1632,7 @@ static int serial_omap_probe_rs485(struct uart_omap_port *up, | |||
1637 | up->rts_gpio = -EINVAL; | 1632 | up->rts_gpio = -EINVAL; |
1638 | } | 1633 | } |
1639 | 1634 | ||
1640 | if (of_property_read_u32_array(np, "rs485-rts-delay", | 1635 | of_get_rs485_mode(np, rs485conf); |
1641 | rs485_delay, 2) == 0) { | ||
1642 | rs485conf->delay_rts_before_send = rs485_delay[0]; | ||
1643 | rs485conf->delay_rts_after_send = rs485_delay[1]; | ||
1644 | } | ||
1645 | |||
1646 | if (of_property_read_bool(np, "rs485-rx-during-tx")) | ||
1647 | rs485conf->flags |= SER_RS485_RX_DURING_TX; | ||
1648 | |||
1649 | if (of_property_read_bool(np, "linux,rs485-enabled-at-boot-time")) | ||
1650 | rs485conf->flags |= SER_RS485_ENABLED; | ||
1651 | 1636 | ||
1652 | return 0; | 1637 | return 0; |
1653 | } | 1638 | } |