-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'tty-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel…
…/git/gregkh/tty Pull tty/serial driver patches from Greg KH: "Here's the big tty/serial driver pull request for 3.12-rc1. Lots of n_tty reworks to resolve some very long-standing issues, removing the 3-4 different locks that were taken for every character. This code has been beaten on for a long time in linux-next with no reported regressions. Other than that, a range of serial and tty driver updates and revisions. Full details in the shortlog" * tag 'tty-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (226 commits) hvc_xen: Remove unnecessary __GFP_ZERO from kzalloc serial: imx: initialize the local variable tty: ar933x_uart: add device tree support and binding documentation tty: ar933x_uart: allow to build the driver as a module ARM: dts: msm: Update uartdm compatible strings devicetree: serial: Document msm_serial bindings serial: unify serial bindings into a single dir serial: fsl-imx-uart: Cleanup duplicate device tree binding tty: ar933x_uart: use config_enabled() macro to clean up ifdefs tty: ar933x_uart: remove superfluous assignment of ar933x_uart_driver.nr tty: ar933x_uart: use the clk API to get the uart clock tty: serial: cpm_uart: Adding proper request of GPIO used by cpm_uart driver serial: sirf: fix the amount of serial ports serial: sirf: define macro for some magic numbers of USP serial: icom: move array overflow checks earlier TTY: amiserial, remove unnecessary platform_set_drvdata() serial: st-asc: remove unnecessary platform_set_drvdata() msm_serial: Send more than 1 character on the console w/ UARTDM msm_serial: Add support for non-GSBI UARTDM devices msm_serial: Switch clock consumer strings and simplify code ...
- Loading branch information
Showing
120 changed files
with
6,773 additions
and
3,040 deletions.
There are no files selected for viewing
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,29 @@ | ||
* Freescale i.MX UART controller | ||
* Freescale i.MX Universal Asynchronous Receiver/Transmitter (UART) | ||
|
||
Required properties: | ||
- compatible : should be "fsl,imx21-uart" | ||
- compatible : Should be "fsl,<soc>-uart" | ||
- reg : Address and length of the register set for the device | ||
- interrupts : Should contain UART interrupt number | ||
- interrupts : Should contain uart interrupt | ||
|
||
Optional properties: | ||
- fsl,uart-has-rtscts: indicate that RTS/CTS signals are used | ||
- fsl,uart-has-rtscts : Indicate the uart has rts and cts | ||
- fsl,irda-mode : Indicate the uart supports irda mode | ||
- fsl,dte-mode : Indicate the uart works in DTE mode. The uart works | ||
is DCE mode by default. | ||
|
||
Note: Each uart controller should have an alias correctly numbered | ||
in "aliases" node. | ||
|
||
Example: | ||
|
||
- From imx51.dtsi: | ||
aliases { | ||
serial0 = &uart1; | ||
serial1 = &uart2; | ||
serial2 = &uart3; | ||
}; | ||
|
||
uart1: serial@73fbc000 { | ||
compatible = "fsl,imx51-uart", "fsl,imx21-uart"; | ||
reg = <0x73fbc000 0x4000>; | ||
interrupts = <31>; | ||
status = "disabled"; | ||
} | ||
|
||
- From imx51-babbage.dts: | ||
uart1: serial@73fbc000 { | ||
fsl,uart-has-rtscts; | ||
status = "okay"; | ||
fsl,dte-mode; | ||
}; | ||
|
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes.
25 changes: 25 additions & 0 deletions
25
Documentation/devicetree/bindings/serial/qcom,msm-uart.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
* MSM Serial UART | ||
|
||
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. | ||
|
||
Required properties: | ||
- compatible: Should contain "qcom,msm-uart" | ||
- reg: Should contain UART register location and length. | ||
- interrupts: Should contain UART interrupt. | ||
- clocks: Should contain the core clock. | ||
- clock-names: Should be "core". | ||
|
||
Example: | ||
|
||
A uart device at 0xa9c00000 with interrupt 11. | ||
|
||
serial@a9c00000 { | ||
compatible = "qcom,msm-uart"; | ||
reg = <0xa9c00000 0x1000>; | ||
interrupts = <11>; | ||
clocks = <&uart_cxc>; | ||
clock-names = "core"; | ||
}; |
53 changes: 53 additions & 0 deletions
53
Documentation/devicetree/bindings/serial/qcom,msm-uartdm.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
* MSM Serial UARTDM | ||
|
||
The MSM serial UARTDM hardware is designed for high-speed use cases where the | ||
transmit and/or receive channels can be offloaded to a dma-engine. From a | ||
software perspective it's mostly compatible with the MSM serial UART except | ||
that it supports reading and writing multiple characters at a time. | ||
|
||
Required properties: | ||
- compatible: Should contain at least "qcom,msm-uartdm". | ||
A more specific property should be specified as follows depending | ||
on the version: | ||
"qcom,msm-uartdm-v1.1" | ||
"qcom,msm-uartdm-v1.2" | ||
"qcom,msm-uartdm-v1.3" | ||
"qcom,msm-uartdm-v1.4" | ||
- reg: Should contain UART register locations and lengths. The first | ||
register shall specify the main control registers. An optional second | ||
register location shall specify the GSBI control region. | ||
"qcom,msm-uartdm-v1.3" is the only compatible value that might | ||
need the GSBI control region. | ||
- interrupts: Should contain UART interrupt. | ||
- clocks: Should contain the core clock and the AHB clock. | ||
- clock-names: Should be "core" for the core clock and "iface" for the | ||
AHB clock. | ||
|
||
Optional properties: | ||
- dmas: Should contain dma specifiers for transmit and receive channels | ||
- dma-names: Should contain "tx" for transmit and "rx" for receive channels | ||
|
||
Examples: | ||
|
||
A uartdm v1.4 device with dma capabilities. | ||
|
||
serial@f991e000 { | ||
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; | ||
reg = <0xf991e000 0x1000>; | ||
interrupts = <0 108 0x0>; | ||
clocks = <&blsp1_uart2_apps_cxc>, <&blsp1_ahb_cxc>; | ||
clock-names = "core", "iface"; | ||
dmas = <&dma0 0>, <&dma0 1>; | ||
dma-names = "tx", "rx"; | ||
}; | ||
|
||
A uartdm v1.3 device without dma capabilities and part of a GSBI complex. | ||
|
||
serial@19c40000 { | ||
compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; | ||
reg = <0x19c40000 0x1000>, | ||
<0x19c00000 0x1000>; | ||
interrupts = <0 195 0x0>; | ||
clocks = <&gsbi5_uart_cxc>, <&gsbi5_ahb_cxc>; | ||
clock-names = "core", "iface"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
* CSR SiRFprimaII/atlasVI Universal Synchronous Asynchronous Receiver/Transmitter * | ||
|
||
Required properties: | ||
- compatible : Should be "sirf,prima2-uart" or "sirf, prima2-usp-uart" | ||
- reg : Offset and length of the register set for the device | ||
- interrupts : Should contain uart interrupt | ||
- fifosize : Should define hardware rx/tx fifo size | ||
- clocks : Should contain uart clock number | ||
|
||
Optional properties: | ||
- sirf,uart-has-rtscts: we have hardware flow controller pins in hardware | ||
- rts-gpios: RTS pin for USP-based UART if sirf,uart-has-rtscts is true | ||
- cts-gpios: CTS pin for USP-based UART if sirf,uart-has-rtscts is true | ||
|
||
Example: | ||
|
||
uart0: uart@b0050000 { | ||
cell-index = <0>; | ||
compatible = "sirf,prima2-uart"; | ||
reg = <0xb0050000 0x1000>; | ||
interrupts = <17>; | ||
fifosize = <128>; | ||
clocks = <&clks 13>; | ||
}; | ||
|
||
On the board-specific dts, we can put rts-gpios and cts-gpios like | ||
|
||
usp@b0090000 { | ||
compatible = "sirf,prima2-usp-uart"; | ||
sirf,uart-has-rtscts; | ||
rts-gpios = <&gpio 15 0>; | ||
cts-gpios = <&gpio 46 0>; | ||
}; |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
*st-asc(Serial Port) | ||
|
||
Required properties: | ||
- compatible : Should be "st,asc". | ||
- reg, reg-names, interrupts, interrupt-names : Standard way to define device | ||
resources with names. look in | ||
Documentation/devicetree/bindings/resource-names.txt | ||
|
||
Optional properties: | ||
- st,hw-flow-ctrl bool flag to enable hardware flow control. | ||
- st,force-m1 bool flat to force asc to be in Mode-1 recommeded | ||
for high bit rates (above 19.2K) | ||
Example: | ||
serial@fe440000{ | ||
compatible = "st,asc"; | ||
reg = <0xfe440000 0x2c>; | ||
interrupts = <0 209 0>; | ||
}; |
File renamed without changes.
22 changes: 0 additions & 22 deletions
22
Documentation/devicetree/bindings/tty/serial/fsl-imx-uart.txt
This file was deleted.
Oops, something went wrong.
27 changes: 0 additions & 27 deletions
27
Documentation/devicetree/bindings/tty/serial/msm_serial.txt
This file was deleted.
Oops, something went wrong.
34 changes: 34 additions & 0 deletions
34
Documentation/devicetree/bindings/tty/serial/qca,ar9330-uart.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
* Qualcomm Atheros AR9330 High-Speed UART | ||
|
||
Required properties: | ||
|
||
- compatible: Must be "qca,ar9330-uart" | ||
|
||
- reg: Specifies the physical base address of the controller and | ||
the length of the memory mapped region. | ||
|
||
- interrupt-parent: The phandle for the interrupt controller that | ||
services interrupts for this device. | ||
|
||
- interrupts: Specifies the interrupt source of the parent interrupt | ||
controller. The format of the interrupt specifier depends on the | ||
parent interrupt controller. | ||
|
||
Additional requirements: | ||
|
||
Each UART port must have an alias correctly numbered in "aliases" | ||
node. | ||
|
||
Example: | ||
|
||
aliases { | ||
serial0 = &uart0; | ||
}; | ||
|
||
uart0: uart@18020000 { | ||
compatible = "qca,ar9330-uart"; | ||
reg = <0x18020000 0x14>; | ||
|
||
interrupt-parent = <&intc>; | ||
interrupts = <3>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.