brintos

brintos / linux-shallow public Read only

0
0
Text · 7.4 KiB · 4c78c54 Raw
269 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/net/dsa/brcm,b53.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Broadcom BCM53xx Ethernet switches8 9maintainers:10  - Florian Fainelli <f.fainelli@gmail.com>11 12description:13  Broadcom BCM53xx Ethernet switches14 15properties:16  compatible:17    oneOf:18      - const: brcm,bcm532519      - const: brcm,bcm5311520      - const: brcm,bcm5312521      - const: brcm,bcm5312822      - const: brcm,bcm5313423      - const: brcm,bcm536524      - const: brcm,bcm539525      - const: brcm,bcm538926      - const: brcm,bcm539727      - const: brcm,bcm539828      - items:29          - const: brcm,bcm11360-srab30          - const: brcm,cygnus-srab31      - items:32          - enum:33              - brcm,bcm53010-srab34              - brcm,bcm53011-srab35              - brcm,bcm53012-srab36              - brcm,bcm53018-srab37              - brcm,bcm53019-srab38          - const: brcm,bcm5301x-srab39      - items:40          - enum:41              - brcm,bcm11404-srab42              - brcm,bcm11407-srab43              - brcm,bcm11409-srab44              - brcm,bcm58310-srab45              - brcm,bcm58311-srab46              - brcm,bcm58313-srab47          - const: brcm,omega-srab48      - items:49          - enum:50              - brcm,bcm58522-srab51              - brcm,bcm58523-srab52              - brcm,bcm58525-srab53              - brcm,bcm58622-srab54              - brcm,bcm58623-srab55              - brcm,bcm58625-srab56              - brcm,bcm88312-srab57          - const: brcm,nsp-srab58      - items:59          - enum:60              - brcm,bcm3384-switch61              - brcm,bcm6318-switch62              - brcm,bcm6328-switch63              - brcm,bcm6362-switch64              - brcm,bcm6368-switch65              - brcm,bcm63268-switch66          - const: brcm,bcm63xx-switch67 68required:69  - compatible70  - reg71 72allOf:73  - $ref: dsa.yaml#/$defs/ethernet-ports74  - if:75      properties:76        compatible:77          contains:78            enum:79              - brcm,bcm532580              - brcm,bcm5311581              - brcm,bcm5312582              - brcm,bcm5312883              - brcm,bcm536584              - brcm,bcm539585              - brcm,bcm539786              - brcm,bcm539887    then:88      $ref: /schemas/spi/spi-peripheral-props.yaml89 90    # BCM585xx/586xx/88312 SoCs91  - if:92      properties:93        compatible:94          contains:95            enum:96              - brcm,bcm58522-srab97              - brcm,bcm58523-srab98              - brcm,bcm58525-srab99              - brcm,bcm58622-srab100              - brcm,bcm58623-srab101              - brcm,bcm58625-srab102              - brcm,bcm88312-srab103    then:104      properties:105        reg:106          minItems: 3107          maxItems: 3108        reg-names:109          items:110            - const: srab111            - const: mux_config112            - const: sgmii_config113        interrupts:114          minItems: 13115          maxItems: 13116        interrupt-names:117          items:118            - const: link_state_p0119            - const: link_state_p1120            - const: link_state_p2121            - const: link_state_p3122            - const: link_state_p4123            - const: link_state_p5124            - const: link_state_p7125            - const: link_state_p8126            - const: phy127            - const: ts128            - const: imp_sleep_timer_p5129            - const: imp_sleep_timer_p7130            - const: imp_sleep_timer_p8131      required:132        - interrupts133    else:134      properties:135        reg:136          maxItems: 1137 138unevaluatedProperties: false139 140examples:141  - |142    mdio {143        #address-cells = <1>;144        #size-cells = <0>;145 146        ethernet-switch@1e {147            compatible = "brcm,bcm53125";148            reg = <30>;149 150            ethernet-ports {151                #address-cells = <1>;152                #size-cells = <0>;153 154                port@0 {155                    reg = <0>;156                    label = "lan1";157                };158 159                port@1 {160                    reg = <1>;161                    label = "lan2";162                };163 164                port@5 {165                    reg = <5>;166                    label = "cable-modem";167                    phy-mode = "rgmii-txid";168                    fixed-link {169                        speed = <1000>;170                        full-duplex;171                    };172                };173 174                port@8 {175                    reg = <8>;176                    phy-mode = "rgmii-txid";177                    ethernet = <&eth0>;178                    fixed-link {179                        speed = <1000>;180                        full-duplex;181                    };182                };183            };184        };185    };186  - |187    #include <dt-bindings/interrupt-controller/arm-gic.h>188    #include <dt-bindings/interrupt-controller/irq.h>189 190    axi {191        #address-cells = <1>;192        #size-cells = <1>;193 194        switch@36000 {195            compatible = "brcm,bcm58623-srab", "brcm,nsp-srab";196            reg = <0x36000 0x1000>,197                  <0x3f308 0x8>,198                  <0x3f410 0xc>;199            reg-names = "srab", "mux_config", "sgmii_config";200            interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,201                         <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,202                         <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,203                         <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,204                         <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,205                         <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,206                         <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,207                         <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,208                         <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,209                         <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,210                         <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,211                         <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,212                         <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;213            interrupt-names = "link_state_p0",214                              "link_state_p1",215                              "link_state_p2",216                              "link_state_p3",217                              "link_state_p4",218                              "link_state_p5",219                              "link_state_p7",220                              "link_state_p8",221                              "phy",222                              "ts",223                              "imp_sleep_timer_p5",224                              "imp_sleep_timer_p7",225                              "imp_sleep_timer_p8";226 227            ethernet-ports {228                #address-cells = <1>;229                #size-cells = <0>;230 231                port@0 {232                    label = "port0";233                    reg = <0>;234                };235 236                port@1 {237                    label = "port1";238                    reg = <1>;239                };240 241                port@2 {242                    label = "port2";243                    reg = <2>;244                };245 246                port@3 {247                    label = "port3";248                    reg = <3>;249                };250 251                port@4 {252                    label = "port4";253                    reg = <4>;254                };255 256                port@8 {257                    ethernet = <&amac2>;258                    reg = <8>;259                    phy-mode = "internal";260 261                    fixed-link {262                        speed = <1000>;263                        full-duplex;264                    };265                };266            };267        };268    };269