[GIT PULL] TTY/Serial patches for 5.4-rc1

From: Greg KH
Date: Wed Sep 18 2019 - 07:47:31 EST


The following changes since commit d45331b00ddb179e291766617259261c112db872:

Linux 5.3-rc4 (2019-08-11 13:26:41 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tags/tty-5.4-rc1

for you to fetch changes up to 1dce2df3ee06e4f10fd9b8919a0f2e90e0ac3188:

serial: tegra: Add PIO mode support (2019-09-05 10:00:05 +0200)

----------------------------------------------------------------
TTY/Serial driver changes for 5.4-rc1

Even in this age, people are still making new serial port silicon,
why...

Anyway, here's the TTY and Serial driver update for 5.4-rc1. Lots of
changes in here for a number of embedded serial port devices that are
being worked on because people really like to see those console logs...

Other than that, nothing major here, no core tty changes that anyone
should care about.

All of these have been in linux-next for a while with no reported
issues.

Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

----------------------------------------------------------------
Aaron Sierra (1):
serial: 8250_exar: Absorb remaining 8250_port INT0 support

Ahung Cheng (2):
serial: tegra: protect IER against LCR.DLAB
serial: tegra: avoid reg access when clk disabled

Andreas Abel (1):
serial: tegra: add internal loopback functionality

Andrey Smirnov (21):
tty: serial: fsl_lpuart: Flush HW FIFOs in .flush_buffer
tty: serial: fsl_lpuart: Simplify RX/TX IRQ handlers
tty: serial: fsl_lpuart: Fix bogus indentation
tty: serial: fsl_lpuart: Drop unnecessary uart_write_wakeup()
tty: serial: fsl_lpuart: Fix issue in software flow control
tty: serial: fls_lpuart: Split shared TX IRQ handler into two
tty: serial: fsl_lpuart: Drop no-op bit opearation
tty: serial: fsl_lpuart: Drop unnecessary extra parenthesis
tty: serial: fsl_lpuart: Clear CSTOPB unconditionally
tty: serial: fsl_lpuart: Use appropriate lpuart32_* I/O funcs
tty: serial: fsl_lpuart: Introduce lpuart_wait_bit_set()
tty: serial: fsl_lpuart: Use cpu_relax() instead of barrier()
tty: serial: fsl_lpuart: Introduce lpuart_stopped_or_empty()
tty: serial: fsl_lpuart: Drop unnecessary lpuart*_stop_tx()
tty: serial: fsl_lpuart: Introduce lpuart_dma_shutdown()
tty: serial: fsl_lpuart: Introduce lpuart_tx_dma_startup()
tty: serial: fsl_lpuart: Introduce lpuart_rx_dma_startup()
tty: serial: fsl_lpuart: Introduce lpuart32_configure()
tty: serial: fsl_lpuart: Introduce lpuart*_setup_watermark_enable()
tty: serial: fsl_lpuart: Don't enable TIE in .startup() or .resume()
tty: serial: fsl_lpuart: Ignore TX/RX interrupts if DMA is enabled

Andy Shevchenko (17):
serial: 8250_exar: Use struct_size() helper
serial: 8250_pnp: Move to struct dev_pm_ops
serial: 8250_exar: No need to autoconfigure Exar ports
serial: 8250_exar: Extract PM routine from 8250_port
serial: 8250_exar: Move custom divisor support out from 8250_port
serial: 8250_exar: Consolidate callback assignments in default_setup()
serial: 8250_exar: Replace msleep(1) with usleep_range()
serial: 8250_dw: Use a unified new dev variable in remove
serial: 8250_dw: use pointer to uart local variable
serial: 8250_dw: split Synopsys DesignWare 8250 common functions
serial: 8250_dw: switch to use 8250_dwlib library
serial: 8250_lpss: switch to use 8250_dwlib library
serial: 8250_lpss: add fractional divisor support
serial: 8250_lpss: register DMA IRQ and pool with instance ID
serial: 8250_lpss: Get rid of custom LPSS_DEVICE() macro
serial: 8250_lpss: Enable HS UART on Elkhart Lake
serial: mctrl_gpio: Use gpiod flags directly

Arnd Bergmann (1):
serial: remove ks8695 driver

Baolin Wang (1):
serial: sprd: Add loopback function support

Christoph Vogtländer (2):
serial: max310x: Properly set flags in AutoCTS mode
serial: max310x: turn off transmitter before activating AutoCTS or auto transmitter flow control

Chuhong Yuan (2):
serial: 8250: Use dev_get_drvdata where possible
tty: nozomi: Use dev_get_drvdata

Chunyan Zhang (4):
serial: sprd: check the right port and membase
serial: sprd: add console_initcall in sprd's uart driver
serial: sprd: keep console alive even if missing the 'enable' clock
serial: sprd: correct the wrong sequence of arguments

Colin Ian King (2):
tty/isicom: remove redundant assignment to variable word_count
tty/serial: atmel: remove redundant assignment to ret

Erwan Le Ray (4):
dt-bindings: serial: stm32: add wakeup option
serial: stm32: select pinctrl state in each suspend/resume function
serial: stm32: add pm_runtime support
serial: stm32: Use __maybe_unused instead of #if CONFIG_PM_SLEEP

Frieder Schrempf (3):
serial: mctrl_gpio: Avoid probe failures in case of missing gpiolib
serial: sh-sci: Don't check for mctrl_gpio_init() returning -ENOSYS
serial: 8250: Don't check for mctrl_gpio_init() returning -ENOSYS

Fugang Duan (5):
tty: serial: fsl_lpuart: remove the dev.coherent_dma_mask zero setting
tty: serial: fsl_lpuart: add earlycon for imx8qxp platform
tty: serial: fsl_lpuart: use kzalloc() instead of kmalloc()
tty: serial: fsl_lpuart: remove sg_set_buf() for sport->rx_sgl
tty: serial: fsl_lpuart: correct the FIFO depth size

Fuqian Huang (1):
tty: serial: Remove call to memset after pci_alloc_consistent

Geert Uytterhoeven (3):
serial: sh-sci: Use DEVICE_ATTR_RW() for rx_fifo_trigger
serial: sh-sci: Don't check for mctrl_gpio_to_gpiod() returning error
serial: mxs-auart: Don't check for mctrl_gpio_to_gpiod() returning error

Greg Kroah-Hartman (1):
serial: sh-sci: use driver core functions, not sysfs ones.

Jan Kundrát (1):
tty: max310x: fix off-by-one buffer access when storing overrun

Je Yen Tam (1):
serial/8250: Add support for NI-Serial PXI/PXIe+485 devices

Ji-Ze Hong (Peter Hong) (1):
serial: 8250_pci: Add F81504A series Support

Joe Perches (1):
tty: hvcs: Fix odd use of strlcpy

Kai-Heng Feng (3):
serial: 8250_pci: Add support for Sunix serial boards
parport: parport_serial: Add support for Sunix Multi I/O boards
serial: 8250_pci: Merge 8250_moxa to 8250_pci

Krishna Yarlagadda (9):
serial: tegra: report error to upper tty layer
dt-binding: serial: tegra: add new chips
serial: tegra: check for FIFO mode enabled status
serial: tegra: set maximum num of uart ports to 8
serial: tegra: add support to use 8 bytes trigger
serial: tegra: DT for Adjusted baud rates
serial: tegra: add support to adjust baud rate
serial: tegra: report clk rate errors
serial: tegra: Add PIO mode support

Mao Wenan (1):
tty: serial: add dependence for CONFIG_SERIAL_FSL_LINFLEXUART

Martin Hundebøll (5):
tty: n_gsm: remove obsolete mknod doc example
tty: n_gsm: update doc example to use header for N_GSM0710 define
tty: n_gsm: add helpers to convert mux-num to/from tty-base
tty: n_gsm: add ioctl to map serial device to mux'ed tty
tty: n_gsm: avoid recursive locking with async port hangup

Navid Emamdoost (1):
8250_lpss: check null return when calling pci_ioremap_bar

Pragnesh Patel (1):
dt-bindings: serial: Convert riscv,sifive-serial to json-schema

Rahul Tanwar (4):
serial: lantiq: Add SMP support
serial: lantiq: Use proper DT compatible string
serial: lantiq: Make IRQ & ISR assignment dynamic
serial: lantiq: Add support for Lightning Mountain SoC

Ralf Ramsauer (1):
serial: 8250_pci: Implement MSI(-X) support

Razvan Stefanescu (1):
tty/serial: atmel: reschedule TX after RX was started

Richard Genoud (1):
tty/serial: atmel: remove unneeded atmel_get_lines_status function

Robert Middleton (1):
serial: 8250_exar: Clear buffer before shutdown

Sergey Organov (8):
serial: imx: set_termios(): do not enable autoRTS if RTS is unset
serial: imx: set_mctrl(): correctly restore autoRTS state
serial: imx: get rid of imx_uart_rts_auto()
serial: imx: get rid of unbounded busy-waiting loop
serial: imx: do not stop Rx/Tx on termios change
serial: imx: do not disable individual irqs during termios change
serial: imx: fix data breakage on termios change
serial: imx: use Tx ready rather than Tx empty irq

Shardar Shariff Md (2):
serial: tegra: add support to ignore read
serial: tegra: flush the RX fifo on frame error

Stefan Agner (2):
tty: serial: fsl_lpuart: fix framing error handling when using DMA
tty: serial: fsl_lpuart: flush receive FIFO after overruns

Stefan-gabriel Mirea (2):
tty: serial: Add linflexuart driver for S32V234
serial: fsl_linflexuart: Update compatible string

Stephen Boyd (1):
tty: Remove dev_err() usage after platform_get_irq()

Stephen Rothwell (1):
xilinx_uartps.c: suppress "may be used uninitialised" warning

Stoica Cosmin-Stefan (1):
dt-bindings: serial: Document Freescale LINFlexD UART

Tony Lindgren (1):
serial: 8250_omap: Fix idling for unloaded serdev drivers

Vivek Gautam (1):
tty: serial: qcom_geni_serial: Update the oversampling rate

Wei Yongjun (1):
tty: serial: linflexuart: Use DEFINE_SPINLOCK() for spinlock

YueHaibing (1):
tty: serial: qcom_geni_serial: use devm_platform_ioremap_resource() to simplify code

kbuild test robot (1):
tty: serial: fix platform_no_drv_owner.cocci warnings

Documentation/admin-guide/kernel-parameters.txt | 6 +
.../bindings/serial/fsl,s32-linflexuart.txt | 22 +
.../bindings/serial/nvidia,tegra20-hsuart.txt | 39 +-
.../devicetree/bindings/serial/sifive-serial.txt | 33 -
.../devicetree/bindings/serial/sifive-serial.yaml | 62 ++
.../devicetree/bindings/serial/st,stm32-usart.txt | 5 +
Documentation/driver-api/serial/n_gsm.rst | 19 +-
drivers/parport/parport_serial.c | 44 +-
drivers/tty/hvc/hvcs.c | 4 +-
drivers/tty/isicom.c | 1 -
drivers/tty/n_gsm.c | 25 +-
drivers/tty/nozomi.c | 4 +-
drivers/tty/serial/8250/8250_bcm2835aux.c | 4 +-
drivers/tty/serial/8250/8250_core.c | 6 +-
drivers/tty/serial/8250/8250_dw.c | 173 +---
drivers/tty/serial/8250/8250_dwlib.c | 126 +++
drivers/tty/serial/8250/8250_dwlib.h | 19 +
drivers/tty/serial/8250/8250_exar.c | 114 ++-
drivers/tty/serial/8250/8250_lpc18xx.c | 4 +-
drivers/tty/serial/8250/8250_lpss.c | 76 +-
drivers/tty/serial/8250/8250_moxa.c | 155 ----
drivers/tty/serial/8250/8250_omap.c | 11 +-
drivers/tty/serial/8250/8250_pci.c | 651 +++++++++++++-
drivers/tty/serial/8250/8250_pnp.c | 20 +-
drivers/tty/serial/8250/8250_port.c | 93 +-
drivers/tty/serial/8250/8250_uniphier.c | 4 +-
drivers/tty/serial/8250/Kconfig | 15 +-
drivers/tty/serial/8250/Makefile | 2 +-
drivers/tty/serial/Kconfig | 33 +-
drivers/tty/serial/Makefile | 2 +-
drivers/tty/serial/amba-pl011.c | 5 +-
drivers/tty/serial/atmel_serial.c | 51 +-
drivers/tty/serial/fsl_linflexuart.c | 937 +++++++++++++++++++++
drivers/tty/serial/fsl_lpuart.c | 518 ++++++------
drivers/tty/serial/icom.c | 2 -
drivers/tty/serial/imx.c | 88 +-
drivers/tty/serial/lantiq.c | 261 ++++--
drivers/tty/serial/lpc32xx_hs.c | 5 +-
drivers/tty/serial/max310x.c | 32 +-
drivers/tty/serial/mvebu-uart.c | 12 +-
drivers/tty/serial/mxs-auart.c | 6 +-
drivers/tty/serial/owl-uart.c | 4 +-
drivers/tty/serial/qcom_geni_serial.c | 23 +-
drivers/tty/serial/rda-uart.c | 4 +-
drivers/tty/serial/sccnxp.c | 1 -
drivers/tty/serial/serial-tegra.c | 407 +++++++--
drivers/tty/serial/serial_ks8695.c | 698 ---------------
drivers/tty/serial/serial_mctrl_gpio.c | 36 +-
drivers/tty/serial/serial_mctrl_gpio.h | 6 +-
drivers/tty/serial/sh-sci.c | 50 +-
drivers/tty/serial/sifive.c | 4 +-
drivers/tty/serial/sprd_serial.c | 58 +-
drivers/tty/serial/stm32-usart.c | 72 +-
drivers/tty/serial/xilinx_uartps.c | 2 +-
include/uapi/linux/gsmmux.h | 2 +
include/uapi/linux/serial_core.h | 9 +-
56 files changed, 3207 insertions(+), 1858 deletions(-)
create mode 100644 Documentation/devicetree/bindings/serial/fsl,s32-linflexuart.txt
delete mode 100644 Documentation/devicetree/bindings/serial/sifive-serial.txt
create mode 100644 Documentation/devicetree/bindings/serial/sifive-serial.yaml
create mode 100644 drivers/tty/serial/8250/8250_dwlib.c
create mode 100644 drivers/tty/serial/8250/8250_dwlib.h
delete mode 100644 drivers/tty/serial/8250/8250_moxa.c
create mode 100644 drivers/tty/serial/fsl_linflexuart.c
delete mode 100644 drivers/tty/serial/serial_ks8695.c