Commit d08410d8 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull tty and serial driver updates from Greg KH:
 "Here is the big set of tty and serial driver updates for 5.13-rc1.

  Actually busy this release, with a number of cleanups happening:

   - much needed core tty cleanups by Jiri Slaby

   - removal of unused and orphaned old-style serial drivers. If anyone
     shows up with this hardware, it is trivial to restore these but we
     really do not think they are in use anymore.

   - fixes and cleanups from Johan Hovold on a number of termios setting
     corner cases that loads of drivers got wrong as well as removing
     unneeded code due to tty core changes from long ago that were never
     propagated out to the drivers

   - loads of platform-specific serial port driver updates and fixes

   - coding style cleanups and other small fixes and updates all over
     the tty/serial tree.

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

* tag 'tty-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (186 commits)
  serial: extend compile-test coverage
  serial: stm32: add FIFO threshold configuration
  dt-bindings: serial: 8250: update TX FIFO trigger level
  dt-bindings: serial: stm32: override FIFO threshold properties
  dt-bindings: serial: add RX and TX FIFO properties
  serial: xilinx_uartps: drop low-latency workaround
  serial: vt8500: drop low-latency workaround
  serial: timbuart: drop low-latency workaround
  serial: sunsu: drop low-latency workaround
  serial: sifive: drop low-latency workaround
  serial: txx9: drop low-latency workaround
  serial: sa1100: drop low-latency workaround
  serial: rp2: drop low-latency workaround
  serial: rda: drop low-latency workaround
  serial: owl: drop low-latency workaround
  serial: msm_serial: drop low-latency workaround
  serial: mpc52xx_uart: drop low-latency workaround
  serial: meson: drop low-latency workaround
  serial: mcf: drop low-latency workaround
  serial: lpc32xx_hs: drop low-latency workaround
  ...
parents 8900d92f 8720037d
Loading
Loading
Loading
Loading
+1 −11
Original line number Diff line number Diff line
@@ -289,7 +289,7 @@
		152 = /dev/kpoll	Kernel Poll Driver
		153 = /dev/mergemem	Memory merge device
		154 = /dev/pmu		Macintosh PowerBook power manager
		155 = /dev/isictl	MultiTech ISICom serial control
		155 =
		156 = /dev/lcd		Front panel LCD display
		157 = /dev/ac		Applicom Intl Profibus card
		158 = /dev/nwbutton	Netwinder external button
@@ -477,11 +477,6 @@
  18 block	Sanyo CD-ROM
		  0 = /dev/sjcd		Sanyo CD-ROM

  19 char	Cyclades serial card
		  0 = /dev/ttyC0	First Cyclades port
		    ...
		 31 = /dev/ttyC31	32nd Cyclades port

  19 block	"Double" compressed disk
		  0 = /dev/double0	First compressed disk
		    ...
@@ -493,11 +488,6 @@
		See the Double documentation for the meaning of the
		mirror devices.

  20 char	Cyclades serial card - alternate devices
		  0 = /dev/cub0		Callout device for ttyC0
		    ...
		 31 = /dev/cub31	Callout device for ttyC31

  20 block	Hitachi CD-ROM (under development)
		  0 = /dev/hitcd	Hitachi CD-ROM

+26 −4
Original line number Diff line number Diff line
@@ -12,7 +12,12 @@ maintainers:
allOf:
  - $ref: /schemas/serial.yaml#
  - if:
      required:
      anyOf:
        - required:
            - aspeed,lpc-io-reg
        - required:
            - aspeed,lpc-interrupts
        - required:
            - aspeed,sirq-polarity-sense
    then:
      properties:
@@ -55,6 +60,7 @@ properties:
      - const: aspeed,ast2500-vuart
      - const: intel,xscale-uart
      - const: mrvl,pxa-uart
      - const: nuvoton,wpcm450-uart
      - const: nuvoton,npcm750-uart
      - const: nvidia,tegra20-uart
      - const: nxp,lpc3220-uart
@@ -165,7 +171,6 @@ properties:
      property.

  tx-threshold:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: |
      Specify the TX FIFO low water indication for parts with programmable
      TX FIFO thresholds.
@@ -188,6 +193,21 @@ properties:
      offset and bit number to identify how the SIRQ polarity should be
      configured. One possible data source is the LPC/eSPI mode bit. Only
      applicable to aspeed,ast2500-vuart.
    deprecated: true

  aspeed,lpc-io-reg:
    $ref: '/schemas/types.yaml#/definitions/uint32'
    description: |
      The VUART LPC address.  Only applicable to aspeed,ast2500-vuart.

  aspeed,lpc-interrupts:
    $ref: "/schemas/types.yaml#/definitions/uint32-array"
    minItems: 2
    maxItems: 2
    description: |
      A 2-cell property describing the VUART SIRQ number and SIRQ
      polarity (IRQ_TYPE_LEVEL_LOW or IRQ_TYPE_LEVEL_HIGH).  Only
      applicable to aspeed,ast2500-vuart.

required:
  - reg
@@ -220,6 +240,7 @@ examples:
    };
  - |
    #include <dt-bindings/clock/aspeed-clock.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    serial@1e787000 {
        compatible = "aspeed,ast2500-vuart";
        reg = <0x1e787000 0x40>;
@@ -227,7 +248,8 @@ examples:
        interrupts = <8>;
        clocks = <&syscon ASPEED_CLK_APB>;
        no-loopback-test;
        aspeed,sirq-polarity-sense = <&syscon 0x70 25>;
        aspeed,lpc-io-reg = <0x3f8>;
        aspeed,lpc-interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
    };

...
+95 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/serial/brcm,bcm7271-uart.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Broadcom 8250 based serial port devicetree bindings

maintainers:
  - Al Cooper <alcooperx@gmail.com>

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

description: |+
  The Broadcom UART is based on the basic 8250 UART but with
  enhancements for more accurate high speed baud rates and support
  for DMA.

properties:
  compatible:
    items:
      - enum:
          - brcm,bcm7271-uart
          - brcm,bcm7278-uart

  reg:
    minItems: 1
    maxItems: 5

  reg-names:
    description: The UART register block and optionally the DMA register blocks.
    oneOf:
      - items:
          - const: uart
      - items:
          - const: uart
          - const: dma_arb
          - const: dma_rx
          - const: dma_tx
          - const: dma_intr2

  clocks:
    minItems: 1

  clock-names:
    const: sw_baud

  interrupts:
    minItems: 1
    maxItems: 2

  interrupt-names:
    description: The UART interrupt and optionally the DMA interrupt.
    minItems: 1
    items:
      - const: uart
      - const: dma

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

unevaluatedProperties: false

examples:
  - |
    serial@840d000 {
        compatible = "brcm,bcm7271-uart";
        reg = <0x840d000 0x20>;
        reg-names = "uart";
        interrupts = <0x0 0x62 0x4>;
        interrupt-names = "uart";
        clocks = <&scmi_clk 190>;
        clock-names = "sw_baud";
    };

    serial@840e000 {
        compatible = "brcm,bcm7271-uart";
        reg = <0x840e000 0x20>,
              <0x840e080 0x8>,
              <0x840e100 0xa8>,
              <0x840e200 0x4c>,
              <0x840e300 0x30>;
        reg-names = "uart", "dma_arb", "dma_rx", "dma_tx", "dma_intr2";
        interrupts = <0x0 0x62 0x4>, <0x0 0x75 0x4>;
        interrupt-names = "uart", "dma";
        clocks = <&scmi_clk 190>;
        clock-names = "sw_baud";
    };
+1 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ Required properties:
  * "mediatek,mt8173-uart" for MT8173 compatible UARTS
  * "mediatek,mt8183-uart", "mediatek,mt6577-uart" for MT8183 compatible UARTS
  * "mediatek,mt8192-uart", "mediatek,mt6577-uart" for MT8192 compatible UARTS
  * "mediatek,mt8195-uart", "mediatek,mt6577-uart" for MT8195 compatible UARTS
  * "mediatek,mt8516-uart" for MT8516 compatible UARTS
  * "mediatek,mt6577-uart" for MT6577 and all of the above

+16 −2
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@
$id: http://devicetree.org/schemas/serial/samsung_uart.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Samsung S3C, S5P and Exynos SoC UART Controller
title: Samsung S3C, S5P, Exynos, and S5L (Apple SoC) SoC UART Controller

maintainers:
  - Krzysztof Kozlowski <krzk@kernel.org>
@@ -19,6 +19,7 @@ properties:
  compatible:
    items:
      - enum:
          - apple,s5l-uart
          - samsung,s3c2410-uart
          - samsung,s3c2412-uart
          - samsung,s3c2440-uart
@@ -51,6 +52,16 @@ properties:
      - pattern: '^clk_uart_baud[0-3]$'
      - pattern: '^clk_uart_baud[0-3]$'

  dmas:
    items:
      - description: DMA controller phandle and request line for RX
      - description: DMA controller phandle and request line for TX

  dma-names:
    items:
      - const: rx
      - const: tx

  interrupts:
    description: RX interrupt and optionally TX interrupt.
    minItems: 1
@@ -68,9 +79,11 @@ required:
  - interrupts
  - reg

additionalProperties: false
unevaluatedProperties: false

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

  - if:
      properties:
        compatible:
@@ -96,6 +109,7 @@ allOf:
        compatible:
          contains:
            enum:
              - apple,s5l-uart
              - samsung,exynos4210-uart
    then:
      properties:
Loading