Merge branch 'work.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / serial / st,stm32-usart.txt
1 * STMicroelectronics STM32 USART
2
3 Required properties:
4 - compatible: can be either:
5   - "st,stm32-uart",
6   - "st,stm32f7-uart",
7   - "st,stm32h7-uart".
8   depending is compatible with stm32(f4), stm32f7 or stm32h7.
9 - reg: The address and length of the peripheral registers space
10 - interrupts:
11   - The interrupt line for the USART instance,
12   - An optional wake-up interrupt.
13 - clocks: The input clock of the USART instance
14
15 Optional properties:
16 - resets: Must contain the phandle to the reset controller.
17 - pinctrl: The reference on the pins configuration
18 - st,hw-flow-ctrl: bool flag to enable hardware flow control.
19 - rs485-rts-delay, rs485-rx-during-tx, rs485-rts-active-low,
20   linux,rs485-enabled-at-boot-time: see rs485.txt.
21 - dmas: phandle(s) to DMA controller node(s). Refer to stm32-dma.txt
22 - dma-names: "rx" and/or "tx"
23 - wakeup-source: bool flag to indicate this device has wakeup capabilities
24 - interrupt-names, if optional wake-up interrupt is used, should be:
25   - "event": the name for the interrupt line of the USART instance
26   - "wakeup" the name for the optional wake-up interrupt
27
28
29 Examples:
30 usart4: serial@40004c00 {
31         compatible = "st,stm32-uart";
32         reg = <0x40004c00 0x400>;
33         interrupts = <52>;
34         clocks = <&clk_pclk1>;
35         pinctrl-names = "default";
36         pinctrl-0 = <&pinctrl_usart4>;
37 };
38
39 usart2: serial@40004400 {
40         compatible = "st,stm32-uart";
41         reg = <0x40004400 0x400>;
42         interrupts = <38>;
43         clocks = <&clk_pclk1>;
44         st,hw-flow-ctrl;
45         pinctrl-names = "default";
46         pinctrl-0 = <&pinctrl_usart2 &pinctrl_usart2_rtscts>;
47 };
48
49 usart1: serial@40011000 {
50         compatible = "st,stm32-uart";
51         reg = <0x40011000 0x400>;
52         interrupts = <37>;
53         clocks = <&rcc 0 164>;
54         dmas = <&dma2 2 4 0x414 0x0>,
55                <&dma2 7 4 0x414 0x0>;
56         dma-names = "rx", "tx";
57 };