1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/serial/snps 4 $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Synopsys DesignWare ABP UART 7 title: Synopsys DesignWare ABP UART 8 8 9 maintainers: 9 maintainers: 10 - Rob Herring <robh@kernel.org> 10 - Rob Herring <robh@kernel.org> 11 11 12 allOf: 12 allOf: 13 - $ref: serial.yaml# !! 13 - $ref: /schemas/serial.yaml# 14 - $ref: rs485.yaml# << 15 << 16 - if: << 17 properties: << 18 compatible: << 19 contains: << 20 const: starfive,jh7110-uart << 21 then: << 22 properties: << 23 resets: << 24 minItems: 2 << 25 else: << 26 properties: << 27 resets: << 28 maxItems: 1 << 29 14 30 properties: 15 properties: 31 compatible: 16 compatible: 32 oneOf: 17 oneOf: 33 - items: 18 - items: 34 - enum: 19 - enum: 35 - renesas,r9a06g032-uart 20 - renesas,r9a06g032-uart 36 - renesas,r9a06g033-uart 21 - renesas,r9a06g033-uart 37 - const: renesas,rzn1-uart 22 - const: renesas,rzn1-uart 38 - items: 23 - items: 39 - enum: 24 - enum: 40 - rockchip,px30-uart 25 - rockchip,px30-uart 41 - rockchip,rk1808-uart << 42 - rockchip,rk3036-uart 26 - rockchip,rk3036-uart 43 - rockchip,rk3066-uart 27 - rockchip,rk3066-uart 44 - rockchip,rk3128-uart << 45 - rockchip,rk3188-uart 28 - rockchip,rk3188-uart 46 - rockchip,rk3288-uart 29 - rockchip,rk3288-uart 47 - rockchip,rk3308-uart 30 - rockchip,rk3308-uart 48 - rockchip,rk3328-uart 31 - rockchip,rk3328-uart 49 - rockchip,rk3368-uart 32 - rockchip,rk3368-uart 50 - rockchip,rk3399-uart 33 - rockchip,rk3399-uart 51 - rockchip,rk3568-uart << 52 - rockchip,rk3588-uart << 53 - rockchip,rv1108-uart 34 - rockchip,rv1108-uart 54 - rockchip,rv1126-uart << 55 - const: snps,dw-apb-uart 35 - const: snps,dw-apb-uart 56 - items: 36 - items: 57 - enum: 37 - enum: 58 - brcm,bcm11351-dw-apb-uart 38 - brcm,bcm11351-dw-apb-uart 59 - brcm,bcm21664-dw-apb-uart 39 - brcm,bcm21664-dw-apb-uart 60 - const: snps,dw-apb-uart 40 - const: snps,dw-apb-uart 61 - items: << 62 - enum: << 63 - starfive,jh7100-hsuart << 64 - starfive,jh7100-uart << 65 - starfive,jh7110-uart << 66 - const: snps,dw-apb-uart << 67 - const: snps,dw-apb-uart 41 - const: snps,dw-apb-uart 68 42 69 reg: 43 reg: 70 maxItems: 1 44 maxItems: 1 71 45 72 interrupts: 46 interrupts: 73 maxItems: 1 47 maxItems: 1 74 48 75 clock-frequency: true 49 clock-frequency: true 76 50 77 clocks: 51 clocks: 78 minItems: 1 52 minItems: 1 79 maxItems: 2 53 maxItems: 2 80 54 81 clock-names: 55 clock-names: 82 items: 56 items: 83 - const: baudclk 57 - const: baudclk 84 - const: apb_pclk 58 - const: apb_pclk 85 59 86 dmas: << 87 maxItems: 2 << 88 << 89 dma-names: << 90 items: << 91 - const: tx << 92 - const: rx << 93 << 94 snps,uart-16550-compatible: 60 snps,uart-16550-compatible: 95 description: reflects the value of UART_16 61 description: reflects the value of UART_16550_COMPATIBLE configuration 96 parameter. Define this if your UART does 62 parameter. Define this if your UART does not implement the busy functionality. 97 type: boolean 63 type: boolean 98 64 99 resets: 65 resets: 100 minItems: 1 !! 66 maxItems: 1 101 maxItems: 2 << 102 67 103 reg-shift: true 68 reg-shift: true 104 69 105 reg-io-width: true 70 reg-io-width: true 106 71 107 dcd-override: 72 dcd-override: 108 description: Override the DCD modem status 73 description: Override the DCD modem status signal. This signal will 109 always be reported as active instead of 74 always be reported as active instead of being obtained from the modem 110 status register. Define this if your ser 75 status register. Define this if your serial port does not use this 111 pin. 76 pin. 112 type: boolean 77 type: boolean 113 78 114 dsr-override: 79 dsr-override: 115 description: Override the DTS modem status 80 description: Override the DTS modem status signal. This signal will 116 always be reported as active instead of 81 always be reported as active instead of being obtained from the modem 117 status register. Define this if your ser 82 status register. Define this if your serial port does not use this 118 pin. 83 pin. 119 type: boolean 84 type: boolean 120 85 121 cts-override: 86 cts-override: 122 description: Override the CTS modem status 87 description: Override the CTS modem status signal. This signal will 123 always be reported as active instead of 88 always be reported as active instead of being obtained from the modem 124 status register. Define this if your ser 89 status register. Define this if your serial port does not use this 125 pin. 90 pin. 126 type: boolean 91 type: boolean 127 92 128 ri-override: 93 ri-override: 129 description: Override the RI modem status 94 description: Override the RI modem status signal. This signal will always 130 be reported as inactive instead of being 95 be reported as inactive instead of being obtained from the modem status 131 register. Define this if your serial por 96 register. Define this if your serial port does not use this pin. 132 type: boolean 97 type: boolean 133 98 134 required: 99 required: 135 - compatible 100 - compatible 136 - reg 101 - reg >> 102 - interrupts 137 103 138 unevaluatedProperties: false 104 unevaluatedProperties: false 139 105 140 examples: 106 examples: 141 - | 107 - | 142 serial@80230000 { 108 serial@80230000 { 143 compatible = "snps,dw-apb-uart"; 109 compatible = "snps,dw-apb-uart"; 144 reg = <0x80230000 0x100>; 110 reg = <0x80230000 0x100>; 145 clock-frequency = <3686400>; 111 clock-frequency = <3686400>; 146 interrupts = <10>; 112 interrupts = <10>; 147 reg-shift = <2>; 113 reg-shift = <2>; 148 reg-io-width = <4>; 114 reg-io-width = <4>; 149 dcd-override; 115 dcd-override; 150 dsr-override; 116 dsr-override; 151 cts-override; 117 cts-override; 152 ri-override; 118 ri-override; 153 }; 119 }; 154 120 155 - | 121 - | 156 // Example with one clock: 122 // Example with one clock: 157 serial@80230000 { 123 serial@80230000 { 158 compatible = "snps,dw-apb-uart"; 124 compatible = "snps,dw-apb-uart"; 159 reg = <0x80230000 0x100>; 125 reg = <0x80230000 0x100>; 160 clocks = <&baudclk>; 126 clocks = <&baudclk>; 161 interrupts = <10>; 127 interrupts = <10>; 162 reg-shift = <2>; 128 reg-shift = <2>; 163 reg-io-width = <4>; 129 reg-io-width = <4>; 164 }; 130 }; 165 131 166 - | 132 - | 167 // Example with two clocks: 133 // Example with two clocks: 168 serial@80230000 { 134 serial@80230000 { 169 compatible = "snps,dw-apb-uart"; 135 compatible = "snps,dw-apb-uart"; 170 reg = <0x80230000 0x100>; 136 reg = <0x80230000 0x100>; 171 clocks = <&baudclk>, <&apb_pclk>; 137 clocks = <&baudclk>, <&apb_pclk>; 172 clock-names = "baudclk", "apb_pclk"; 138 clock-names = "baudclk", "apb_pclk"; 173 interrupts = <10>; 139 interrupts = <10>; 174 reg-shift = <2>; 140 reg-shift = <2>; 175 reg-io-width = <4>; 141 reg-io-width = <4>; 176 }; 142 }; 177 ... 143 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.