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