178 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Synopsys DesignWare ABP UART8 9maintainers:10 - Rob Herring <robh@kernel.org>11 12allOf:13 - $ref: serial.yaml#14 - $ref: rs485.yaml#15 16 - if:17 properties:18 compatible:19 contains:20 const: starfive,jh7110-uart21 then:22 properties:23 resets:24 minItems: 225 else:26 properties:27 resets:28 maxItems: 129 30properties:31 compatible:32 oneOf:33 - items:34 - enum:35 - renesas,r9a06g032-uart36 - renesas,r9a06g033-uart37 - const: renesas,rzn1-uart38 - items:39 - enum:40 - rockchip,px30-uart41 - rockchip,rk1808-uart42 - rockchip,rk3036-uart43 - rockchip,rk3066-uart44 - rockchip,rk3128-uart45 - rockchip,rk3188-uart46 - rockchip,rk3288-uart47 - rockchip,rk3308-uart48 - rockchip,rk3328-uart49 - rockchip,rk3368-uart50 - rockchip,rk3399-uart51 - rockchip,rk3568-uart52 - rockchip,rk3588-uart53 - rockchip,rv1108-uart54 - rockchip,rv1126-uart55 - const: snps,dw-apb-uart56 - items:57 - enum:58 - brcm,bcm11351-dw-apb-uart59 - brcm,bcm21664-dw-apb-uart60 - const: snps,dw-apb-uart61 - items:62 - enum:63 - starfive,jh7100-hsuart64 - starfive,jh7100-uart65 - starfive,jh7110-uart66 - const: snps,dw-apb-uart67 - const: snps,dw-apb-uart68 69 reg:70 maxItems: 171 72 interrupts:73 maxItems: 174 75 clock-frequency: true76 77 clocks:78 minItems: 179 maxItems: 280 81 clock-names:82 items:83 - const: baudclk84 - const: apb_pclk85 86 dmas:87 maxItems: 288 89 dma-names:90 items:91 - const: tx92 - const: rx93 94 snps,uart-16550-compatible:95 description: reflects the value of UART_16550_COMPATIBLE configuration96 parameter. Define this if your UART does not implement the busy functionality.97 type: boolean98 99 resets:100 minItems: 1101 maxItems: 2102 103 reg-shift: true104 105 reg-io-width: true106 107 dcd-override:108 description: Override the DCD modem status signal. This signal will109 always be reported as active instead of being obtained from the modem110 status register. Define this if your serial port does not use this111 pin.112 type: boolean113 114 dsr-override:115 description: Override the DTS modem status signal. This signal will116 always be reported as active instead of being obtained from the modem117 status register. Define this if your serial port does not use this118 pin.119 type: boolean120 121 cts-override:122 description: Override the CTS modem status signal. This signal will123 always be reported as active instead of being obtained from the modem124 status register. Define this if your serial port does not use this125 pin.126 type: boolean127 128 ri-override:129 description: Override the RI modem status signal. This signal will always130 be reported as inactive instead of being obtained from the modem status131 register. Define this if your serial port does not use this pin.132 type: boolean133 134required:135 - compatible136 - reg137 138unevaluatedProperties: false139 140examples:141 - |142 serial@80230000 {143 compatible = "snps,dw-apb-uart";144 reg = <0x80230000 0x100>;145 clock-frequency = <3686400>;146 interrupts = <10>;147 reg-shift = <2>;148 reg-io-width = <4>;149 dcd-override;150 dsr-override;151 cts-override;152 ri-override;153 };154 155 - |156 // Example with one clock:157 serial@80230000 {158 compatible = "snps,dw-apb-uart";159 reg = <0x80230000 0x100>;160 clocks = <&baudclk>;161 interrupts = <10>;162 reg-shift = <2>;163 reg-io-width = <4>;164 };165 166 - |167 // Example with two clocks:168 serial@80230000 {169 compatible = "snps,dw-apb-uart";170 reg = <0x80230000 0x100>;171 clocks = <&baudclk>, <&apb_pclk>;172 clock-names = "baudclk", "apb_pclk";173 interrupts = <10>;174 reg-shift = <2>;175 reg-io-width = <4>;176 };177...178