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 137 !! 102 - interrupts 138 unevaluatedProperties: false << 139 103 140 examples: 104 examples: 141 - | 105 - | 142 serial@80230000 { 106 serial@80230000 { 143 compatible = "snps,dw-apb-uart"; 107 compatible = "snps,dw-apb-uart"; 144 reg = <0x80230000 0x100>; 108 reg = <0x80230000 0x100>; 145 clock-frequency = <3686400>; 109 clock-frequency = <3686400>; 146 interrupts = <10>; 110 interrupts = <10>; 147 reg-shift = <2>; 111 reg-shift = <2>; 148 reg-io-width = <4>; 112 reg-io-width = <4>; 149 dcd-override; 113 dcd-override; 150 dsr-override; 114 dsr-override; 151 cts-override; 115 cts-override; 152 ri-override; 116 ri-override; 153 }; 117 }; 154 118 155 - | 119 - | 156 // Example with one clock: 120 // Example with one clock: 157 serial@80230000 { 121 serial@80230000 { 158 compatible = "snps,dw-apb-uart"; 122 compatible = "snps,dw-apb-uart"; 159 reg = <0x80230000 0x100>; 123 reg = <0x80230000 0x100>; 160 clocks = <&baudclk>; 124 clocks = <&baudclk>; 161 interrupts = <10>; 125 interrupts = <10>; 162 reg-shift = <2>; 126 reg-shift = <2>; 163 reg-io-width = <4>; 127 reg-io-width = <4>; 164 }; 128 }; 165 129 166 - | 130 - | 167 // Example with two clocks: 131 // Example with two clocks: 168 serial@80230000 { 132 serial@80230000 { 169 compatible = "snps,dw-apb-uart"; 133 compatible = "snps,dw-apb-uart"; 170 reg = <0x80230000 0x100>; 134 reg = <0x80230000 0x100>; 171 clocks = <&baudclk>, <&apb_pclk>; 135 clocks = <&baudclk>, <&apb_pclk>; 172 clock-names = "baudclk", "apb_pclk"; 136 clock-names = "baudclk", "apb_pclk"; 173 interrupts = <10>; 137 interrupts = <10>; 174 reg-shift = <2>; 138 reg-shift = <2>; 175 reg-io-width = <4>; 139 reg-io-width = <4>; 176 }; 140 }; 177 ... 141 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.