Skip to content

Commit

Permalink
Merge tag 'tty-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/…
Browse files Browse the repository at this point in the history
…git/gregkh/tty

Pull tty / serial driver updates from Greg KH:
 "Here is the big set of serial and tty driver updates for 6.3-rc1.

  Once again, Jiri and Ilpo have done a number of core vt and tty/serial
  layer cleanups that were much needed and appreciated. Other than that,
  it's just a bunch of little tty/serial driver updates:

   - qcom-geni-serial driver updates

   - liteuart driver updates

   - hvcs driver cleanups

   - n_gsm updates and additions for new features

   - more 8250 device support added

   - fpga/dfl update and additions

   - imx serial driver updates

   - fsl_lpuart updates

   - other tiny fixes and updates for serial drivers

  All of these have been in linux-next for a while with no reported
  problems"

* tag 'tty-6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (143 commits)
  tty: n_gsm: add keep alive support
  serial: imx: remove a redundant check
  dt-bindings: serial: snps-dw-apb-uart: add dma & dma-names properties
  soc: qcom: geni-se: Move qcom-geni-se.h to linux/soc/qcom/geni-se.h
  tty: n_gsm: add TIOCMIWAIT support
  tty: n_gsm: add RING/CD control support
  tty: n_gsm: mark unusable ioctl structure fields accordingly
  serial: imx: get rid of registers shadowing
  serial: imx: refine local variables in rxint()
  serial: imx: stop using USR2 in FIFO reading loop
  serial: imx: remove redundant USR2 read from FIFO reading loop
  serial: imx: do not break from FIFO reading loop prematurely
  serial: imx: do not sysrq broken chars
  serial: imx: work-around for hardware RX flood
  serial: imx: factor-out common code to imx_uart_soft_reset()
  serial: 8250_pci1xxxx: Add power management functions to quad-uart driver
  serial: 8250_pci1xxxx: Add RS485 support to quad-uart driver
  serial: 8250_pci1xxxx: Add driver for quad-uart support
  serial: 8250_pci: Add serial8250_pci_setup_port definition in 8250_pcilib.c
  tty: pcn_uart: fix memory leak with using debugfs_lookup()
  ...
  • Loading branch information
torvalds committed Feb 24, 2023
2 parents 72bffe7 + 72206cc commit 17cd4d6
Show file tree
Hide file tree
Showing 104 changed files with 2,908 additions and 1,283 deletions.
12 changes: 7 additions & 5 deletions Documentation/admin-guide/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1172,10 +1172,10 @@
specified, the serial port must already be setup and
configured.

uart[8250],io,<addr>[,options]
uart[8250],mmio,<addr>[,options]
uart[8250],mmio32,<addr>[,options]
uart[8250],mmio32be,<addr>[,options]
uart[8250],io,<addr>[,options[,uartclk]]
uart[8250],mmio,<addr>[,options[,uartclk]]
uart[8250],mmio32,<addr>[,options[,uartclk]]
uart[8250],mmio32be,<addr>[,options[,uartclk]]
uart[8250],0x<addr>[,options]
Start an early, polled-mode console on the 8250/16550
UART at the specified I/O port or MMIO address.
Expand All @@ -1184,7 +1184,9 @@
If none of [io|mmio|mmio32|mmio32be], <addr> is assumed
to be equivalent to 'mmio'. 'options' are specified
in the same format described for "console=ttyS<n>"; if
unspecified, the h/w is not initialized.
unspecified, the h/w is not initialized. 'uartclk' is
the uart clock frequency; if unspecified, it is set
to 'BASE_BAUD' * 16.

pl011,<addr>
pl011,mmio32,<addr>
Expand Down
10 changes: 7 additions & 3 deletions Documentation/devicetree/bindings/serial/8250.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@ properties:
- const: mrvl,pxa-uart
- const: nuvoton,wpcm450-uart
- const: nuvoton,npcm750-uart
- const: nuvoton,npcm845-uart
- const: nvidia,tegra20-uart
- const: nxp,lpc3220-uart
- items:
Expand Down Expand Up @@ -92,6 +91,10 @@ properties:
- enum:
- ns16550 # Deprecated, unless the FIFO really is broken
- ns16550a
- items:
- enum:
- nuvoton,npcm845-uart
- const: nuvoton,npcm750-uart
- items:
- enum:
- ralink,mt7620a-uart
Expand Down Expand Up @@ -200,12 +203,13 @@ properties:
deprecated: true

aspeed,lpc-io-reg:
$ref: '/schemas/types.yaml#/definitions/uint32'
$ref: /schemas/types.yaml#/definitions/uint32-array
maxItems: 1
description: |
The VUART LPC address. Only applicable to aspeed,ast2500-vuart.
aspeed,lpc-interrupts:
$ref: "/schemas/types.yaml#/definitions/uint32-array"
$ref: /schemas/types.yaml#/definitions/uint32-array
minItems: 2
maxItems: 2
description: |
Expand Down
23 changes: 9 additions & 14 deletions Documentation/devicetree/bindings/serial/8250_omap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,6 @@ properties:
dsr-gpios: true
rng-gpios: true
dcd-gpios: true
rs485-rts-delay: true
rs485-rts-active-low: true
rs485-rx-during-tx: true
rs485-rts-active-high: true
linux,rs485-enabled-at-boot-time: true
rts-gpio: true
power-domains: true
clock-frequency: true
Expand Down Expand Up @@ -109,12 +104,12 @@ else:

examples:
- |
serial@49042000 {
compatible = "ti,omap3-uart";
reg = <0x49042000 0x400>;
interrupts = <80>;
dmas = <&sdma 81 &sdma 82>;
dma-names = "tx", "rx";
ti,hwmods = "uart4";
clock-frequency = <48000000>;
};
serial@49042000 {
compatible = "ti,omap3-uart";
reg = <0x49042000 0x400>;
interrupts = <80>;
dmas = <&sdma 81 &sdma 82>;
dma-names = "tx", "rx";
ti,hwmods = "uart4";
clock-frequency = <48000000>;
};
15 changes: 9 additions & 6 deletions Documentation/devicetree/bindings/serial/amlogic,meson-uart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ description: |
is active since power-on and does not need any clock gating and is usable
as very early serial console.
allOf:
- $ref: serial.yaml#

properties:
compatible:
oneOf:
Expand Down Expand Up @@ -69,14 +72,14 @@ required:
- clocks
- clock-names

additionalProperties: false
unevaluatedProperties: false

examples:
- |
serial@84c0 {
compatible = "amlogic,meson-gx-uart";
reg = <0x84c0 0x14>;
interrupts = <26>;
clocks = <&xtal>, <&pclk>, <&xtal>;
clock-names = "xtal", "pclk", "baud";
compatible = "amlogic,meson-gx-uart";
reg = <0x84c0 0x14>;
interrupts = <26>;
clocks = <&xtal>, <&pclk>, <&xtal>;
clock-names = "xtal", "pclk", "baud";
};
27 changes: 19 additions & 8 deletions Documentation/devicetree/bindings/serial/cdns,uart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,6 @@ title: Cadence UART Controller
maintainers:
- Michal Simek <michal.simek@xilinx.com>

allOf:
- $ref: /schemas/serial.yaml#

properties:
compatible:
oneOf:
Expand Down Expand Up @@ -46,21 +43,35 @@ properties:
port does not use this pin.
type: boolean

power-domains:
maxItems: 1

required:
- compatible
- reg
- interrupts
- clocks
- clock-names

allOf:
- $ref: serial.yaml#
- if:
properties:
compatible:
contains:
const: cdns,uart-r1p8
then:
properties:
power-domains: false

unevaluatedProperties: false

examples:
- |
uart0: serial@e0000000 {
compatible = "xlnx,xuartps", "cdns,uart-r1p8";
clocks = <&clkc 23>, <&clkc 40>;
clock-names = "uart_clk", "pclk";
reg = <0xE0000000 0x1000>;
interrupts = <0 27 4>;
compatible = "xlnx,xuartps", "cdns,uart-r1p8";
clocks = <&clkc 23>, <&clkc 40>;
clock-names = "uart_clk", "pclk";
reg = <0xe0000000 0x1000>;
interrupts = <0 27 4>;
};
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ maintainers:
- Chester Lin <clin@suse.com>

allOf:
- $ref: "serial.yaml"
- $ref: serial.yaml#

properties:
compatible:
Expand Down
11 changes: 2 additions & 9 deletions Documentation/devicetree/bindings/serial/fsl-imx-uart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ maintainers:
- Fabio Estevam <festevam@gmail.com>

allOf:
- $ref: "serial.yaml"
- $ref: "rs485.yaml"
- $ref: serial.yaml#
- $ref: rs485.yaml#

properties:
compatible:
Expand Down Expand Up @@ -83,13 +83,6 @@ properties:
are sensible for most use cases. If you need low latency processing on
slow connections this needs to be configured appropriately.
uart-has-rtscts: true

rs485-rts-delay: true
rs485-rts-active-low: true
rs485-rx-during-tx: true
linux,rs485-enabled-at-boot-time: true

required:
- compatible
- reg
Expand Down
6 changes: 2 additions & 4 deletions Documentation/devicetree/bindings/serial/fsl-lpuart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ maintainers:
- Fugang Duan <fugang.duan@nxp.com>

allOf:
- $ref: "rs485.yaml"
- $ref: rs485.yaml#
- $ref: serial.yaml#

properties:
compatible:
Expand Down Expand Up @@ -64,9 +65,6 @@ properties:
- const: rx
- const: tx

rs485-rts-active-low: true
linux,rs485-enabled-at-boot-time: true

required:
- compatible
- reg
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ maintainers:
- Fabio Estevam <festevam@gmail.com>

allOf:
- $ref: "serial.yaml"
- $ref: serial.yaml#

properties:
compatible:
Expand Down
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/serial/pl011.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ maintainers:
- Rob Herring <robh@kernel.org>

allOf:
- $ref: /schemas/arm/primecell.yaml#
- $ref: serial.yaml#

# Need a custom select here or 'arm,primecell' will match on lots of nodes
Expand Down
25 changes: 0 additions & 25 deletions Documentation/devicetree/bindings/serial/qcom,msm-uart.txt

This file was deleted.

56 changes: 56 additions & 0 deletions Documentation/devicetree/bindings/serial/qcom,msm-uart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/serial/qcom,msm-uart.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm MSM SoC Serial UART

maintainers:
- Bjorn Andersson <andersson@kernel.org>
- Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

description:
The MSM serial UART hardware is designed for low-speed use cases where a
dma-engine isn't needed. From a software perspective it's mostly compatible
with the MSM serial UARTDM except that it only supports reading and writing
one character at a time.

properties:
compatible:
const: qcom,msm-uart

clocks:
maxItems: 1

clock-names:
items:
- const: core

interrupts:
maxItems: 1

reg:
maxItems: 1

required:
- compatible
- clock-names
- clocks
- interrupts
- reg

unevaluatedProperties: false

allOf:
- $ref: /schemas/serial/serial.yaml#

examples:
- |
serial@a9c00000 {
compatible = "qcom,msm-uart";
reg = <0xa9c00000 0x1000>;
interrupts = <11>;
clocks = <&uart_cxc>;
clock-names = "core";
};
10 changes: 5 additions & 5 deletions Documentation/devicetree/bindings/serial/renesas,em-uart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -66,9 +66,9 @@ examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
uart0: serial@e1020000 {
compatible = "renesas,em-uart";
reg = <0xe1020000 0x38>;
interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&usia_u0_sclk>;
clock-names = "sclk";
compatible = "renesas,em-uart";
reg = <0xe1020000 0x38>;
interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&usia_u0_sclk>;
clock-names = "sclk";
};
26 changes: 13 additions & 13 deletions Documentation/devicetree/bindings/serial/renesas,hscif.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -131,20 +131,20 @@ examples:
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/power/r8a7795-sysc.h>
aliases {
serial1 = &hscif1;
serial1 = &hscif1;
};
hscif1: serial@e6550000 {
compatible = "renesas,hscif-r8a7795", "renesas,rcar-gen3-hscif",
"renesas,hscif";
reg = <0xe6550000 96>;
interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 519>, <&cpg CPG_CORE R8A7795_CLK_S3D1>,
<&scif_clk>;
clock-names = "fck", "brg_int", "scif_clk";
dmas = <&dmac1 0x33>, <&dmac1 0x32>, <&dmac2 0x33>, <&dmac2 0x32>;
dma-names = "tx", "rx", "tx", "rx";
power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
resets = <&cpg 519>;
uart-has-rtscts;
compatible = "renesas,hscif-r8a7795", "renesas,rcar-gen3-hscif",
"renesas,hscif";
reg = <0xe6550000 96>;
interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 519>, <&cpg CPG_CORE R8A7795_CLK_S3D1>,
<&scif_clk>;
clock-names = "fck", "brg_int", "scif_clk";
dmas = <&dmac1 0x33>, <&dmac1 0x32>, <&dmac2 0x33>, <&dmac2 0x32>;
dma-names = "tx", "rx", "tx", "rx";
power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
resets = <&cpg 519>;
uart-has-rtscts;
};
Loading

0 comments on commit 17cd4d6

Please sign in to comment.