1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/serial/fsl-imx-uart.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Freescale i.MX Universal Asynchronous Receiver/Transmitter (UART) 8 9maintainers: 10 - Fabio Estevam <festevam@gmail.com> 11 12allOf: 13 - $ref: serial.yaml# 14 - $ref: rs485.yaml# 15 16properties: 17 compatible: 18 oneOf: 19 - const: fsl,imx1-uart 20 - const: fsl,imx21-uart 21 - items: 22 - enum: 23 - fsl,imx25-uart 24 - fsl,imx27-uart 25 - fsl,imx31-uart 26 - fsl,imx35-uart 27 - fsl,imx50-uart 28 - fsl,imx51-uart 29 - fsl,imx53-uart 30 - fsl,imx6q-uart 31 - const: fsl,imx21-uart 32 - items: 33 - enum: 34 - fsl,imx6sl-uart 35 - fsl,imx6sll-uart 36 - fsl,imx6sx-uart 37 - const: fsl,imx6q-uart 38 - const: fsl,imx21-uart 39 - items: 40 - enum: 41 - fsl,imx6ul-uart 42 - fsl,imx7d-uart 43 - fsl,imx8mm-uart 44 - fsl,imx8mn-uart 45 - fsl,imx8mp-uart 46 - fsl,imx8mq-uart 47 - const: fsl,imx6q-uart 48 49 reg: 50 maxItems: 1 51 52 clocks: 53 maxItems: 2 54 55 clock-names: 56 items: 57 - const: ipg 58 - const: per 59 60 dmas: 61 items: 62 - description: DMA controller phandle and request line for RX 63 - description: DMA controller phandle and request line for TX 64 65 dma-names: 66 items: 67 - const: rx 68 - const: tx 69 70 interrupts: 71 maxItems: 1 72 73 fsl,dte-mode: 74 $ref: /schemas/types.yaml#/definitions/flag 75 description: | 76 Indicate the uart works in DTE mode. The uart works in DCE mode by default. 77 78 fsl,inverted-tx: 79 $ref: /schemas/types.yaml#/definitions/flag 80 description: | 81 Indicate that the hardware attached to the peripheral inverts the signal 82 transmitted, and that the peripheral should invert its output using the 83 INVT registers. 84 85 fsl,inverted-rx: 86 $ref: /schemas/types.yaml#/definitions/flag 87 description: | 88 Indicate that the hardware attached to the peripheral inverts the signal 89 received, and that the peripheral should invert its input using the 90 INVR registers. 91 92 fsl,dma-info: 93 $ref: /schemas/types.yaml#/definitions/uint32-array 94 minItems: 2 95 maxItems: 2 96 description: | 97 First cell contains the size of DMA buffer chunks, second cell contains 98 the amount of chunks used for the device. Multiplying both numbers is 99 the total size of memory used for receiving data. 100 When not being configured the system will use default settings, which 101 are sensible for most use cases. If you need low latency processing on 102 slow connections this needs to be configured appropriately. 103 104required: 105 - compatible 106 - reg 107 - clocks 108 - clock-names 109 - interrupts 110 111unevaluatedProperties: false 112 113examples: 114 - | 115 #include <dt-bindings/clock/imx5-clock.h> 116 117 aliases { 118 serial0 = &uart1; 119 }; 120 121 uart1: serial@73fbc000 { 122 compatible = "fsl,imx51-uart", "fsl,imx21-uart"; 123 reg = <0x73fbc000 0x4000>; 124 interrupts = <31>; 125 clocks = <&clks IMX5_CLK_UART1_IPG_GATE>, 126 <&clks IMX5_CLK_UART1_PER_GATE>; 127 clock-names = "ipg", "per"; 128 dmas = <&sdma 18 4 1>, <&sdma 19 4 2>; 129 dma-names = "rx", "tx"; 130 uart-has-rtscts; 131 fsl,dte-mode; 132 }; 133