File Index
Files and directories
Sign in
FILE

renesas,r8a779f0-ether-switch.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/net/renesas,r8a779f0-ether-switch.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/net/renesas,r8a779f0-ether-switch.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Renesas Ethernet Switch
  8
  9maintainers:
 10  - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
 11
 12properties:
 13  compatible:
 14    const: renesas,r8a779f0-ether-switch
 15
 16  reg:
 17    maxItems: 2
 18
 19  reg-names:
 20    items:
 21      - const: base
 22      - const: secure_base
 23
 24  interrupts:
 25    maxItems: 47
 26
 27  interrupt-names:
 28    items:
 29      - const: mfwd_error
 30      - const: race_error
 31      - const: coma_error
 32      - const: gwca0_error
 33      - const: gwca1_error
 34      - const: etha0_error
 35      - const: etha1_error
 36      - const: etha2_error
 37      - const: gptp0_status
 38      - const: gptp1_status
 39      - const: mfwd_status
 40      - const: race_status
 41      - const: coma_status
 42      - const: gwca0_status
 43      - const: gwca1_status
 44      - const: etha0_status
 45      - const: etha1_status
 46      - const: etha2_status
 47      - const: rmac0_status
 48      - const: rmac1_status
 49      - const: rmac2_status
 50      - const: gwca0_rxtx0
 51      - const: gwca0_rxtx1
 52      - const: gwca0_rxtx2
 53      - const: gwca0_rxtx3
 54      - const: gwca0_rxtx4
 55      - const: gwca0_rxtx5
 56      - const: gwca0_rxtx6
 57      - const: gwca0_rxtx7
 58      - const: gwca1_rxtx0
 59      - const: gwca1_rxtx1
 60      - const: gwca1_rxtx2
 61      - const: gwca1_rxtx3
 62      - const: gwca1_rxtx4
 63      - const: gwca1_rxtx5
 64      - const: gwca1_rxtx6
 65      - const: gwca1_rxtx7
 66      - const: gwca0_rxts0
 67      - const: gwca0_rxts1
 68      - const: gwca1_rxts0
 69      - const: gwca1_rxts1
 70      - const: rmac0_mdio
 71      - const: rmac1_mdio
 72      - const: rmac2_mdio
 73      - const: rmac0_phy
 74      - const: rmac1_phy
 75      - const: rmac2_phy
 76
 77  clocks:
 78    maxItems: 1
 79
 80  resets:
 81    maxItems: 1
 82
 83  iommus:
 84    maxItems: 16
 85
 86  power-domains:
 87    maxItems: 1
 88
 89  ethernet-ports:
 90    type: object
 91    additionalProperties: false
 92
 93    properties:
 94      '#address-cells':
 95        description: Port number of ETHA (TSNA).
 96        const: 1
 97
 98      '#size-cells':
 99        const: 0
100
101    patternProperties:
102      "^port@[0-9a-f]+$":
103        type: object
104        $ref: /schemas/net/ethernet-controller.yaml#
105        unevaluatedProperties: false
106
107        properties:
108          reg:
109            maxItems: 1
110            description:
111              Port number of ETHA (TSNA).
112
113          phys:
114            maxItems: 1
115            description:
116              Phandle of an Ethernet SERDES.
117
118          mdio:
119            $ref: /schemas/net/mdio.yaml#
120            unevaluatedProperties: false
121
122        required:
123          - reg
124          - phy-handle
125          - phy-mode
126          - phys
127          - mdio
128
129required:
130  - compatible
131  - reg
132  - reg-names
133  - interrupts
134  - interrupt-names
135  - clocks
136  - resets
137  - power-domains
138  - ethernet-ports
139
140additionalProperties: false
141
142examples:
143  - |
144    #include <dt-bindings/clock/r8a779f0-cpg-mssr.h>
145    #include <dt-bindings/interrupt-controller/arm-gic.h>
146    #include <dt-bindings/power/r8a779f0-sysc.h>
147
148    ethernet@e6880000 {
149        compatible = "renesas,r8a779f0-ether-switch";
150        reg = <0xe6880000 0x20000>, <0xe68c0000 0x20000>;
151        reg-names = "base", "secure_base";
152        interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
153                     <GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH>,
154                     <GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH>,
155                     <GIC_SPI 259 IRQ_TYPE_LEVEL_HIGH>,
156                     <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
157                     <GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>,
158                     <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>,
159                     <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>,
160                     <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>,
161                     <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>,
162                     <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>,
163                     <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
164                     <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
165                     <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>,
166                     <GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>,
167                     <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>,
168                     <GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH>,
169                     <GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH>,
170                     <GIC_SPI 276 IRQ_TYPE_LEVEL_HIGH>,
171                     <GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH>,
172                     <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>,
173                     <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
174                     <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
175                     <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
176                     <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
177                     <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>,
178                     <GIC_SPI 285 IRQ_TYPE_LEVEL_HIGH>,
179                     <GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>,
180                     <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>,
181                     <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>,
182                     <GIC_SPI 289 IRQ_TYPE_LEVEL_HIGH>,
183                     <GIC_SPI 290 IRQ_TYPE_LEVEL_HIGH>,
184                     <GIC_SPI 291 IRQ_TYPE_LEVEL_HIGH>,
185                     <GIC_SPI 292 IRQ_TYPE_LEVEL_HIGH>,
186                     <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
187                     <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
188                     <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
189                     <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
190                     <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
191                     <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>,
192                     <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>,
193                     <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>,
194                     <GIC_SPI 301 IRQ_TYPE_LEVEL_HIGH>,
195                     <GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>,
196                     <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
197                     <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>,
198                     <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>;
199        interrupt-names = "mfwd_error", "race_error",
200                          "coma_error", "gwca0_error",
201                          "gwca1_error", "etha0_error",
202                          "etha1_error", "etha2_error",
203                          "gptp0_status", "gptp1_status",
204                          "mfwd_status", "race_status",
205                          "coma_status", "gwca0_status",
206                          "gwca1_status", "etha0_status",
207                          "etha1_status", "etha2_status",
208                          "rmac0_status", "rmac1_status",
209                          "rmac2_status",
210                          "gwca0_rxtx0", "gwca0_rxtx1",
211                          "gwca0_rxtx2", "gwca0_rxtx3",
212                          "gwca0_rxtx4", "gwca0_rxtx5",
213                          "gwca0_rxtx6", "gwca0_rxtx7",
214                          "gwca1_rxtx0", "gwca1_rxtx1",
215                          "gwca1_rxtx2", "gwca1_rxtx3",
216                          "gwca1_rxtx4", "gwca1_rxtx5",
217                          "gwca1_rxtx6", "gwca1_rxtx7",
218                          "gwca0_rxts0", "gwca0_rxts1",
219                          "gwca1_rxts0", "gwca1_rxts1",
220                          "rmac0_mdio", "rmac1_mdio",
221                          "rmac2_mdio",
222                          "rmac0_phy", "rmac1_phy",
223                          "rmac2_phy";
224        clocks = <&cpg CPG_MOD 1505>;
225        power-domains = <&sysc R8A779F0_PD_ALWAYS_ON>;
226        resets = <&cpg 1505>;
227
228        ethernet-ports {
229            #address-cells = <1>;
230            #size-cells = <0>;
231            port@0 {
232                reg = <0>;
233                phy-handle = <&eth_phy0>;
234                phy-mode = "sgmii";
235                phys = <&eth_serdes 0>;
236                mdio {
237                    #address-cells = <1>;
238                    #size-cells = <0>;
239                };
240            };
241            port@1 {
242                reg = <1>;
243                phy-handle = <&eth_phy1>;
244                phy-mode = "sgmii";
245                phys = <&eth_serdes 1>;
246                mdio {
247                    #address-cells = <1>;
248                    #size-cells = <0>;
249                };
250            };
251            port@2 {
252                reg = <2>;
253                phy-handle = <&eth_phy2>;
254                phy-mode = "sgmii";
255                phys = <&eth_serdes 2>;
256                mdio {
257                    #address-cells = <1>;
258                    #size-cells = <0>;
259                };
260            };
261        };
262    };
~/ Read-only file preview.