[GIT PULL] TTY/Serial driver changes for 6.1-rc1
From: Greg KH
Date: Fri Oct 07 2022 - 12:35:41 EST
The following changes since commit 7e2cd21e02b35483ce8ea88da5732d4d3ec3a6c9:
Merge tag 'tty-6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty (2022-09-24 08:42:55 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tags/tty-6.1-rc1
for you to fetch changes up to 30963b2f75bfdbbcf1cc5d80bf88fec7aaba808d:
serial: cpm_uart: Don't request IRQ too early for console port (2022-09-30 14:59:19 +0200)
----------------------------------------------------------------
TTY/Serial driver update for 6.1-rc1
Here is the big set of TTY and Serial driver updates for 6.1-rc1.
Lots of cleanups in here, no real new functionality this time around,
with the diffstat being that we removed more lines than we added!
Included in here are:
- termios unification cleanups from Al Viro, it's nice to
finally get this work done
- tty serial transmit cleanups in various drivers in preparation
for more cleanup and unification in future releases (that work
was not ready for this release.)
- n_gsm fixes and updates
- ktermios cleanups and code reductions
- dt bindings json conversions and updates for new devices
- some serial driver updates for new devices
- lots of other tiny cleanups and janitorial stuff. Full
details in the shortlog.
All of these have been in linux-next for a while with no reported
issues.
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
----------------------------------------------------------------
Al Viro (9):
loongarch: remove generic-y += termios.h
termios: get rid of stray asm/termios.h include in n_hdlc.c
termios: uninline conversion helpers
termios: start unifying non-UAPI parts of asm/termios.h
termios: consolidate values for VDISCARD in INIT_C_CC
make generic INIT_C_CC a bit more generic
termios: convert the last (sparc) INIT_C_CC to array
termios: get rid of non-UAPI asm/termios.h
termios: kill uapi termios.h that are identical to generic one
Andy Shevchenko (5):
serial: pic32_uart: Utilize uart_console_enabled()
serial: pic32_uart: Convert to use GPIO descriptors
serial: 8250_men_mcb: Remove duplicate UAPI:serial_core inclusion
serial: 8250_omap: Convert to use uart_xmit_advance()
serial: 8250_dma: Convert to use uart_xmit_advance()
Christophe JAILLET (1):
tty: serial: meson: Use devm_clk_get_enabled() helper
Christophe Leroy (1):
serial: cpm_uart: Don't request IRQ too early for console port
Colin Ian King (1):
tty: mxser: remove redundant assignment to hwid
Dan Carpenter (1):
drivers: serial: jsm: fix some leaks in probe
Daniel Starke (6):
tty: n_gsm: add enumeration for gsm encodings
tty: n_gsm: name gsm tty device minors
tty: n_gsm: replace use of gsm_read_ea() with gsm_read_ea_val()
tty: n_gsm: introduce gsm_control_command() function
tty: n_gsm: name the debug bits
tty: n_gsm: add debug bit for user payload
Daniel Vetter (3):
tty/vt: Remove printable variable
kernel/panic: Drop unblank_screen call
tty/vt: Add console_lock check to vt_console_print()
Gaosheng Cui (1):
tty: serial: cpm_uart: remove unused cpm_uart_nr declaration
Greg Kroah-Hartman (2):
Merge 6.0-rc4 into tty-next
Merge 7e2cd21e02b3 ("Merge tag 'tty-6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty") into tty-next
Ilpo Järvinen (19):
serial: 8250: Add helper for clearing IER
serial: 8250: Clear dma tx_err unconditionally
tty: Remove baudrate dead code & make ktermios params const
tty: Fix comment style in tty_termios_input_baud_rate()
serial: dz: Assume previous baudrate is valid
tty: Make tty_termios_copy_hw() old ktermios const
tty: Make ldisc ->set_termios() old ktermios const
serial: Make ->set_termios() old ktermios const
usb: serial: Make ->set_termios() old ktermios const
tty: Make ->set_termios() old ktermios const
serial: sh-sci: CIRC_CNT_TO_END() is enough
serial: sh-sci: tail is already on valid range
serial: pch_uart: CIRC_CNT_TO_END() is enough
serial: ucc_uart: Remove custom frame size calculation
serial: cpm_uart: Remove custom frame size calculation
serial: fsl_lpuart: Remove custom frame size calculation
serial: sunsab: Remove frame size calculation dead-code
serial: tegra: Remove custom frame size calculation
serial: 8250: Toggle IER bits on only after irq has been set up
Jason Wang (1):
serial: fsl_lpuart: Fix comment typo
Jindong Yue (1):
tty: serial: fsl_lpuart: adjust SERIAL_FSL_LPUART_CONSOLE config dependency
Jiri Slaby (12):
tty: serial: move and cleanup vt8500_tx_empty()
tty: serial: clean up stop-tx part in altera_uart_tx_chars()
tty: serial: altera_uart_{r,t}x_chars() need only uart_port
tty: serial: extract lqasc_tx_ready() from lqasc_tx_chars()
tty: serial: extract tx_ready() from __serial_lpc32xx_tx()
tty: serial: switch mpc52xx_uart_int_{r,t}x_chars() to bool
tty: serial: extract serial_omap_put_char() from transmit_chars()
tty: serial: allow pxa.c to be COMPILE_TESTed
tty: serial: extend lqasc_tx_ready() to lqasc_console_putchar()
tty: serial: use FIELD_GET() in lqasc_tx_ready()
tty: serial: unify TX space reads under altera_jtaguart_tx_space()
tty: serial: do unlock on a common path in altera_jtaguart_console_putc()
Johan Jonker (1):
dt-bindings: serial: rockchip: add rockchip,rk3128-uart
Kewei Xu (1):
dt-binding: serial: mediatek,uart: update bingding for MT8188
Krzysztof Kozlowski (1):
dt-bindings: serial: samsung_uart: drop ref from reg-io-width
Lad Prabhakar (1):
dt-bindings: serial: renesas,scif: Document RZ/Five SoC
Lukas Wunner (4):
serial: omap: Disallow RS-485 if rts-gpio is not specified
serial: ar933x: Deassert Transmit Enable on ->rs485_config()
serial: stm32: Deassert Transmit Enable on ->rs485_config()
serial: Deassert Transmit Enable on probe in driver-specific way
Maciej W. Rozycki (3):
serial: 8250: Let drivers request full 16550A feature probing
serial: 8250: Request full 16550A feature probing for OxSemi PCIe devices
serial: 8250: Switch UART port flags to using BIT_ULL
Michal Simek (1):
tty: xilinx_uartps: Update copyright text to correct format
Pali Rohár (1):
serial: 8250: Fix restoring termios speed after suspend
Ren Zhijie (1):
serial: stm32: Fix unused-variable warning
Rob Herring (1):
dt-bindings: serial: samsung: Add 'power-domains' property
Sergiu Moga (9):
dt-bindings: serial: atmel,at91-usart: convert to json-schema
dt-bindings: serial: atmel,at91-usart: Add SAM9260 compatibles to SAM9X60
dt-bindings: serial: atmel,at91-usart: Add gclk as a possible USART clock
tty: serial: atmel: Separate mode clearing between UART and USART
tty: serial: atmel: Only divide Clock Divisor if the IP is USART
tty: serial: atmel: Make the driver aware of the existence of GCLK
tty: serial: atmel: Use FIELD_PREP/FIELD_GET
MAINTAINERS: Solve warning regarding inexistent atmel-usart binding
tty: serial: atmel: Add COMMON_CLK dependency to SERIAL_ATMEL
Shaomin Deng (1):
serial: Fix double word
Sherry Sun (1):
tty: serial: fsl_lpuart: disable dma rx/tx use flags in lpuart_dma_shutdown
Shubhrajyoti Datta (8):
tty: xilinx_uartps: Check clk_enable return value
tty: xilinx_uartps: Initialise the read_status_mask
tty: xilinx_uartps: Fix the ignore_status
tty: xilinx_uartps: Prevent writes when the controller is disabled
tty: xilinx_uartps: Add timeout waiting for loop
tty: xilinx_uartps: Check the clk_enable return value
dt-bindings: serial: pl011: Add a reg-io-width parameter
serial: pl011: Add reg-io-width parameters
Vijaya Krishna Nivarthi (1):
tty: serial: qcom-geni-serial: Replace hardcoded icc flags with macros.
Wolfram Sang (1):
tty: move from strlcpy with unused retval to strscpy
наб (5):
tty: remove TTY_MAGIC
tty: remove TTY_DRIVER_MAGIC
tty: n_hdlc: remove HDLC_MAGIC
tty: synclink_gt: remove MGSL_MAGIC
tty: hvc: remove HVC_IUCV_MAGIC
.../devicetree/bindings/mfd/atmel-usart.txt | 98 ----------
.../bindings/serial/atmel,at91-usart.yaml | 190 +++++++++++++++++++
.../devicetree/bindings/serial/mediatek,uart.yaml | 1 +
.../devicetree/bindings/serial/pl011.yaml | 6 +
.../devicetree/bindings/serial/renesas,scif.yaml | 2 +-
.../devicetree/bindings/serial/samsung_uart.yaml | 4 +-
.../bindings/serial/snps-dw-apb-uart.yaml | 1 +
Documentation/process/magic-number.rst | 4 -
.../translations/it_IT/process/magic-number.rst | 4 -
.../translations/zh_CN/process/magic-number.rst | 4 -
.../translations/zh_TW/process/magic-number.rst | 4 -
MAINTAINERS | 6 +-
arch/alpha/include/asm/termios.h | 87 ---------
arch/alpha/kernel/Makefile | 2 +-
arch/alpha/kernel/termios.c | 56 ++++++
arch/arm/mach-ep93xx/core.c | 1 +
arch/arm/mach-versatile/integrator_ap.c | 1 +
arch/ia64/include/asm/termios.h | 58 ------
arch/ia64/include/uapi/asm/termios.h | 51 ------
arch/loongarch/include/asm/Kbuild | 1 -
arch/mips/include/asm/termios.h | 105 -----------
arch/parisc/include/asm/termios.h | 52 ------
arch/parisc/include/uapi/asm/termios.h | 44 -----
arch/powerpc/include/asm/termios.h | 18 --
arch/s390/include/asm/termios.h | 26 ---
arch/s390/include/uapi/asm/termios.h | 50 -----
arch/sparc/include/asm/termios.h | 147 ---------------
arch/sparc/kernel/Makefile | 4 +-
arch/sparc/kernel/termios.c | 115 ++++++++++++
drivers/char/pcmcia/synclink_cs.c | 3 +-
drivers/ipack/devices/ipoctal.c | 2 +-
drivers/mmc/core/sdio_uart.c | 4 +-
drivers/net/usb/hso.c | 3 +-
drivers/net/wwan/wwan_core.c | 1 +
drivers/s390/char/tty3270.c | 2 +-
drivers/staging/fwserial/fwserial.c | 3 +-
drivers/staging/greybus/uart.c | 2 +-
drivers/tty/amiserial.c | 6 +-
drivers/tty/hvc/hvc_iucv.c | 11 +-
drivers/tty/hvc/hvcs.c | 3 +-
drivers/tty/moxa.c | 9 +-
drivers/tty/mxser.c | 8 +-
drivers/tty/n_gsm.c | 202 ++++++++++++---------
drivers/tty/n_hdlc.c | 28 ---
drivers/tty/n_tty.c | 2 +-
drivers/tty/pty.c | 2 +-
drivers/tty/serial/21285.c | 2 +-
drivers/tty/serial/8250/8250_bcm7271.c | 2 +-
drivers/tty/serial/8250/8250_core.c | 16 +-
drivers/tty/serial/8250/8250_dma.c | 7 +-
drivers/tty/serial/8250/8250_dw.c | 2 +-
drivers/tty/serial/8250/8250_dwlib.c | 3 +-
drivers/tty/serial/8250/8250_dwlib.h | 2 +-
drivers/tty/serial/8250/8250_fintek.c | 2 +-
drivers/tty/serial/8250/8250_lpss.c | 2 +-
drivers/tty/serial/8250/8250_men_mcb.c | 1 -
drivers/tty/serial/8250/8250_mid.c | 5 +-
drivers/tty/serial/8250/8250_mtk.c | 2 +-
drivers/tty/serial/8250/8250_omap.c | 9 +-
drivers/tty/serial/8250/8250_pci.c | 14 +-
drivers/tty/serial/8250/8250_port.c | 62 ++++---
drivers/tty/serial/Kconfig | 5 +-
drivers/tty/serial/altera_jtaguart.c | 36 ++--
drivers/tty/serial/altera_uart.c | 18 +-
drivers/tty/serial/amba-pl010.c | 2 +-
drivers/tty/serial/amba-pl011.c | 20 +-
drivers/tty/serial/apbuart.c | 2 +-
drivers/tty/serial/ar933x_uart.c | 9 +-
drivers/tty/serial/arc_uart.c | 2 +-
drivers/tty/serial/atmel_serial.c | 87 ++++++++-
drivers/tty/serial/atmel_serial.h | 75 ++++----
drivers/tty/serial/bcm63xx_uart.c | 5 +-
drivers/tty/serial/clps711x.c | 2 +-
drivers/tty/serial/cpm_uart/cpm_uart.h | 1 -
drivers/tty/serial/cpm_uart/cpm_uart_core.c | 55 +++---
drivers/tty/serial/digicolor-usart.c | 2 +-
drivers/tty/serial/dz.c | 11 +-
drivers/tty/serial/earlycon.c | 6 +-
drivers/tty/serial/fsl_linflexuart.c | 2 +-
drivers/tty/serial/fsl_lpuart.c | 27 ++-
drivers/tty/serial/icom.c | 5 +-
drivers/tty/serial/imx.c | 10 +-
drivers/tty/serial/ip22zilog.c | 2 +-
drivers/tty/serial/jsm/jsm_driver.c | 3 +-
drivers/tty/serial/jsm/jsm_tty.c | 4 +-
drivers/tty/serial/lantiq.c | 25 +--
drivers/tty/serial/liteuart.c | 2 +-
drivers/tty/serial/lpc32xx_hs.c | 12 +-
drivers/tty/serial/max3100.c | 2 +-
drivers/tty/serial/max310x.c | 2 +-
drivers/tty/serial/mcf.c | 2 +-
drivers/tty/serial/men_z135_uart.c | 4 +-
drivers/tty/serial/meson_uart.c | 31 +---
drivers/tty/serial/milbeaut_usio.c | 3 +-
drivers/tty/serial/mpc52xx_uart.c | 30 +--
drivers/tty/serial/mps2-uart.c | 2 +-
drivers/tty/serial/msm_serial.c | 2 +-
drivers/tty/serial/mux.c | 2 +-
drivers/tty/serial/mvebu-uart.c | 2 +-
drivers/tty/serial/mxs-auart.c | 2 +-
drivers/tty/serial/omap-serial.c | 49 ++---
drivers/tty/serial/owl-uart.c | 2 +-
drivers/tty/serial/pch_uart.c | 7 +-
drivers/tty/serial/pic32_uart.c | 52 ++----
drivers/tty/serial/pmac_zilog.c | 4 +-
drivers/tty/serial/pxa.c | 2 +-
drivers/tty/serial/qcom_geni_serial.c | 8 +-
drivers/tty/serial/rda-uart.c | 2 +-
drivers/tty/serial/rp2.c | 5 +-
drivers/tty/serial/sa1100.c | 2 +-
drivers/tty/serial/samsung_tty.c | 2 +-
drivers/tty/serial/sb1250-duart.c | 2 +-
drivers/tty/serial/sc16is7xx.c | 2 +-
drivers/tty/serial/sccnxp.c | 3 +-
drivers/tty/serial/serial-tegra.c | 15 +-
drivers/tty/serial/serial_core.c | 46 ++---
drivers/tty/serial/serial_txx9.c | 2 +-
drivers/tty/serial/sh-sci.c | 8 +-
drivers/tty/serial/sifive.c | 2 +-
drivers/tty/serial/sprd_serial.c | 5 +-
drivers/tty/serial/st-asc.c | 2 +-
drivers/tty/serial/stm32-usart.c | 108 +++++------
drivers/tty/serial/sunhv.c | 2 +-
drivers/tty/serial/sunplus-uart.c | 2 +-
drivers/tty/serial/sunsab.c | 22 +--
drivers/tty/serial/sunsu.c | 8 +-
drivers/tty/serial/sunzilog.c | 8 +-
drivers/tty/serial/tegra-tcu.c | 2 +-
drivers/tty/serial/timbuart.c | 4 +-
drivers/tty/serial/uartlite.c | 5 +-
drivers/tty/serial/ucc_uart.c | 18 +-
drivers/tty/serial/vt8500_serial.c | 17 +-
drivers/tty/serial/xilinx_uartps.c | 62 ++++++-
drivers/tty/serial/zs.c | 2 +-
drivers/tty/synclink_gt.c | 11 +-
drivers/tty/tty.h | 2 +-
drivers/tty/tty_baudrate.c | 26 +--
drivers/tty/tty_io.c | 11 +-
drivers/tty/tty_ioctl.c | 79 +++++++-
drivers/tty/tty_mutex.c | 6 -
drivers/tty/vcc.c | 1 +
drivers/tty/vt/vt.c | 11 +-
drivers/usb/class/cdc-acm.c | 4 +-
drivers/usb/serial/ark3116.c | 2 +-
drivers/usb/serial/belkin_sa.c | 6 +-
drivers/usb/serial/ch341.c | 5 +-
drivers/usb/serial/cp210x.c | 13 +-
drivers/usb/serial/cypress_m8.c | 6 +-
drivers/usb/serial/digi_acceleport.c | 6 +-
drivers/usb/serial/f81232.c | 3 +-
drivers/usb/serial/f81534.c | 4 +-
drivers/usb/serial/ftdi_sio.c | 6 +-
drivers/usb/serial/io_edgeport.c | 7 +-
drivers/usb/serial/io_ti.c | 8 +-
drivers/usb/serial/ir-usb.c | 6 +-
drivers/usb/serial/iuu_phoenix.c | 3 +-
drivers/usb/serial/keyspan.c | 3 +-
drivers/usb/serial/keyspan_pda.c | 3 +-
drivers/usb/serial/kl5kusb105.c | 5 +-
drivers/usb/serial/kobil_sct.c | 6 +-
drivers/usb/serial/mct_u232.c | 5 +-
drivers/usb/serial/mos7720.c | 5 +-
drivers/usb/serial/mos7840.c | 5 +-
drivers/usb/serial/mxuport.c | 4 +-
drivers/usb/serial/oti6858.c | 6 +-
drivers/usb/serial/pl2303.c | 3 +-
drivers/usb/serial/quatech2.c | 4 +-
drivers/usb/serial/spcp8x5.c | 3 +-
drivers/usb/serial/ssu100.c | 4 +-
drivers/usb/serial/ti_usb_3410_5052.c | 6 +-
drivers/usb/serial/upd78f0730.c | 4 +-
drivers/usb/serial/usb-serial.c | 3 +-
drivers/usb/serial/whiteheat.c | 6 +-
drivers/usb/serial/xr_serial.c | 20 +-
include/asm-generic/termios-base.h | 78 --------
include/asm-generic/termios.h | 108 -----------
include/linux/serdev.h | 1 +
include/linux/serial_8250.h | 5 +-
include/linux/serial_core.h | 36 ++--
include/linux/termios_internal.h | 49 +++++
include/linux/tty.h | 10 +-
include/linux/tty_driver.h | 10 +-
include/linux/tty_ldisc.h | 4 +-
include/linux/usb/serial.h | 4 +-
include/linux/vt_kern.h | 1 -
kernel/panic.c | 3 -
lib/bust_spinlocks.c | 3 -
net/bluetooth/rfcomm/tty.c | 3 +-
188 files changed, 1432 insertions(+), 1764 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/mfd/atmel-usart.txt
create mode 100644 Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml
delete mode 100644 arch/alpha/include/asm/termios.h
create mode 100644 arch/alpha/kernel/termios.c
delete mode 100644 arch/ia64/include/asm/termios.h
delete mode 100644 arch/ia64/include/uapi/asm/termios.h
delete mode 100644 arch/mips/include/asm/termios.h
delete mode 100644 arch/parisc/include/asm/termios.h
delete mode 100644 arch/parisc/include/uapi/asm/termios.h
delete mode 100644 arch/powerpc/include/asm/termios.h
delete mode 100644 arch/s390/include/asm/termios.h
delete mode 100644 arch/s390/include/uapi/asm/termios.h
delete mode 100644 arch/sparc/include/asm/termios.h
create mode 100644 arch/sparc/kernel/termios.c
delete mode 100644 include/asm-generic/termios-base.h
delete mode 100644 include/asm-generic/termios.h
create mode 100644 include/linux/termios_internal.h