Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db593322 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull tty/staging driver updates from Greg KH:
 "Here is the big tty/serial driver update for 4.16-rc1.

  The usual number of various serial driver fixes and updates to try to
  get them to work with crazy hardware configurations (seriously, how
  many different ways are hardware engineers going to come up with to
  hook up a simple UART?)

  There is also some serdev bugfixes and updates, as well as a
  smattering of other small fixes in here.

  All have been in the linux-next tree for a while, with no reported
  issues"

* tag 'tty-4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (65 commits)
  tty: serial: exar: Relocate sleep wake-up handling
  tty: fix data race between tty_init_dev and flush of buf
  serial: imx: fix endless loop during suspend
  serial: core: mark port as initialized after successful IRQ change
  serdev: only match serdev devices
  serdev: do not generate modaliases for controllers
  serial: mxs-auart: don't use GPIOF_* with gpiod_get_direction
  serial: 8250_dw: Revert "Improve clock rate setting"
  MAINTAINERS: Add myself as designated reviewer for 8250_dw
  gpio: serial: max310x: Support open-drain configuration for GPIOs
  serdev: Fix serdev_uevent failure on ACPI enumerated serdev-controllers
  serial: 8250_ingenic: Parse earlycon options
  serial: 8250_ingenic: Add support for the JZ4770 SoC
  serial: core: Make uart_parse_options take const char* argument
  serial: 8250_of: fix return code when probe function fails to get reset
  serial: imx: Only wakeup via RTSDEN bit if the system has RTS/CTS
  serial: 8250_uniphier: fix error return code in uniphier_uart_probe()
  tty: n_gsm: Allow ADM response in addition to UA for control dlci
  tty: omap-serial: Fix initial on-boot RTS GPIO level
  tty: serial: jsm: Add one check against NULL pointer dereference
  ...
parents e4ee8b85 c7e1b405
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -6,10 +6,10 @@ Required properties:
- interrupts : Should contain uart interrupt

Optional properties:
- fsl,irda-mode : Indicate the uart supports irda mode
- fsl,dte-mode : Indicate the uart works in DTE mode. The uart works
                  in DCE mode by default.
- rs485-rts-delay, rs485-rx-during-tx, linux,rs485-enabled-at-boot-time: see rs485.txt
- rs485-rts-delay, rs485-rts-active-low, rs485-rx-during-tx,
  linux,rs485-enabled-at-boot-time: see rs485.txt

Please check Documentation/devicetree/bindings/serial/serial.txt
for the complete list of generic properties.
+2 −1
Original line number Diff line number Diff line
@@ -16,7 +16,8 @@ Required properties:
Optional properties:
- dmas: A list of two dma specifiers, one for each entry in dma-names.
- dma-names: should contain "tx" and "rx".
- rs485-rts-delay, rs485-rx-during-tx, linux,rs485-enabled-at-boot-time: see rs485.txt
- rs485-rts-delay, rs485-rts-active-low, rs485-rx-during-tx,
  linux,rs485-enabled-at-boot-time: see rs485.txt

Note: Optional properties for DMA support. Write them both or both not.

+6 −2
Original line number Diff line number Diff line
* Ingenic SoC UART

Required properties:
- compatible : "ingenic,jz4740-uart", "ingenic,jz4760-uart",
	"ingenic,jz4775-uart" or "ingenic,jz4780-uart"
- compatible : One of:
  - "ingenic,jz4740-uart",
  - "ingenic,jz4760-uart",
  - "ingenic,jz4770-uart",
  - "ingenic,jz4775-uart",
  - "ingenic,jz4780-uart".
- reg : offset and length of the register set for the device.
- interrupts : should contain uart interrupt.
- clocks : phandles to the module & baud clocks.
+16 −2
Original line number Diff line number Diff line
@@ -24,13 +24,27 @@ Optional properties:
    1 = active low.

Example:

/ {
	clocks {
		spi_uart_clk: osc_max14830 {
			compatible = "fixed-clock";
			#clock-cells = <0>;
			clock-frequency = <3686400>;
		};

	};
};

&spi0 {
	max14830: max14830@0 {
		compatible = "maxim,max14830";
		reg = <0>;
		clocks = <&clk20m>;
		clocks = <&spi_uart_clk>;
		clock-names = "osc";
		interrupt-parent = <&gpio3>;
		interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
		gpio-controller;
		#gpio-cells = <2>;
	};
};
+45 −5
Original line number Diff line number Diff line
* Marvell UART : Non standard UART used in some of Marvell EBU SoCs (e.g., Armada-3700)
* Marvell UART : Non standard UART used in some of Marvell EBU SoCs
                 e.g., Armada-3700.

Required properties:
- compatible: "marvell,armada-3700-uart"
- compatible:
    - "marvell,armada-3700-uart" for the standard variant of the UART
      (32 bytes FIFO, no DMA, level interrupts, 8-bit access to the
      FIFO, baudrate limited to 230400).
    - "marvell,armada-3700-uart-ext" for the extended variant of the
      UART (128 bytes FIFO, DMA, front interrupts, 8-bit or 32-bit
      accesses to the FIFO, baudrate unlimited by the dividers).
- reg: offset and length of the register set for the device.
- interrupts: device interrupt
- clocks: UART reference clock used to derive the baudrate. If no clock
      is provided (possible only with the "marvell,armada-3700-uart"
      compatible string for backward compatibility), it will only work
      if the baudrate was initialized by the bootloader and no baudrate
      change will then be possible.
- interrupts:
    - Must contain three elements for the standard variant of the IP
      (marvell,armada-3700-uart): "uart-sum", "uart-tx" and "uart-rx",
      respectively the UART sum interrupt, the UART TX interrupt and
      UART RX interrupt. A corresponding interrupt-names property must
      be defined.
    - Must contain two elements for the extended variant of the IP
      (marvell,armada-3700-uart-ext): "uart-tx" and "uart-rx",
      respectively the UART TX interrupt and the UART RX interrupt. A
      corresponding interrupts-names property must be defined.
    - For backward compatibility reasons, a single element interrupts
      property is also supported for the standard variant of the IP,
      containing only the UART sum interrupt. This form is deprecated
      and should no longer be used.

Example:
	serial@12000 {
	uart0: serial@12000 {
		compatible = "marvell,armada-3700-uart";
		reg = <0x12000 0x200>;
		interrupts = <43>;
		clocks = <&xtalclk>;
		interrupts =
		<GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
		interrupt-names = "uart-sum", "uart-tx", "uart-rx";
	};

	uart1: serial@12200 {
		compatible = "marvell,armada-3700-uart-ext";
		reg = <0x12200 0x30>;
		clocks = <&xtalclk>;
		interrupts =
		<GIC_SPI 30 IRQ_TYPE_EDGE_RISING>,
		<GIC_SPI 31 IRQ_TYPE_EDGE_RISING>;
		interrupt-names = "uart-tx", "uart-rx";
	};
Loading