File Index
Files and directories
Sign in
FILE

brcm,sf2.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/net/dsa/brcm,sf2.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/dsa/brcm,sf2.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Broadcom Starfighter 2 integrated switch
  8
  9maintainers:
 10  - Florian Fainelli <f.fainelli@gmail.com>
 11
 12properties:
 13  compatible:
 14    items:
 15      - enum:
 16          - brcm,bcm4908-switch
 17          - brcm,bcm7278-switch-v4.0
 18          - brcm,bcm7278-switch-v4.8
 19          - brcm,bcm7445-switch-v4.0
 20
 21  reg:
 22    minItems: 6
 23    maxItems: 6
 24
 25  reg-names:
 26    items:
 27      - const: core
 28      - const: reg
 29      - const: intrl2_0
 30      - const: intrl2_1
 31      - const: fcb
 32      - const: acb
 33
 34  interrupts:
 35    minItems: 2
 36    maxItems: 2
 37
 38  interrupt-names:
 39    items:
 40      - const: switch_0
 41      - const: switch_1
 42
 43  resets:
 44    maxItems: 1
 45
 46  reset-names:
 47    const: switch
 48
 49  clocks:
 50    minItems: 1
 51    items:
 52      - description: switch's main clock
 53      - description: dividing of the switch core clock
 54
 55  clock-names:
 56    minItems: 1
 57    items:
 58      - const: sw_switch
 59      - const: sw_switch_mdiv
 60
 61  brcm,num-gphy:
 62    $ref: /schemas/types.yaml#/definitions/uint32
 63    description: maximum number of integrated gigabit PHYs in the switch
 64
 65  brcm,num-rgmii-ports:
 66    $ref: /schemas/types.yaml#/definitions/uint32
 67    description: maximum number of RGMII interfaces supported by the switch
 68
 69  brcm,fcb-pause-override:
 70    description: if present indicates that the switch supports Failover Control
 71      Block pause override capability
 72    type: boolean
 73
 74  brcm,acb-packets-inflight:
 75    description: if present indicates that the switch Admission Control Block
 76      supports reporting the number of packets in-flight in a switch queue
 77    type: boolean
 78
 79  ports:
 80    type: object
 81    additionalProperties: true
 82
 83    patternProperties:
 84      '^port@[0-9a-f]$':
 85        $ref: dsa-port.yaml#
 86        unevaluatedProperties: false
 87
 88        properties:
 89          brcm,use-bcm-hdr:
 90            description: if present, indicates that the switch port has Broadcom
 91              tags enabled (per-packet metadata)
 92            type: boolean
 93
 94required:
 95  - reg
 96  - interrupts
 97
 98allOf:
 99  - $ref: dsa.yaml#
100  - if:
101      properties:
102        compatible:
103          contains:
104            enum:
105              - brcm,bcm7278-switch-v4.0
106              - brcm,bcm7278-switch-v4.8
107    then:
108      properties:
109        clocks:
110          minItems: 1
111          maxItems: 1
112        clock-names:
113          minItems: 1
114          maxItems: 1
115      required:
116        - clocks
117        - clock-names
118  - if:
119      properties:
120        compatible:
121          contains:
122            const: brcm,bcm7445-switch-v4.0
123    then:
124      properties:
125        clocks:
126          minItems: 2
127          maxItems: 2
128        clock-names:
129          minItems: 2
130          maxItems: 2
131      required:
132        - clocks
133        - clock-names
134
135additionalProperties: false
136
137examples:
138  - |
139    switch@f0b00000 {
140            compatible = "brcm,bcm7445-switch-v4.0";
141            reg = <0xf0b00000 0x40000>,
142                  <0xf0b40000 0x110>,
143                  <0xf0b40340 0x30>,
144                  <0xf0b40380 0x30>,
145                  <0xf0b40400 0x34>,
146                  <0xf0b40600 0x208>;
147            reg-names = "core", "reg", "intrl2_0", "intrl2_1",
148                        "fcb", "acb";
149            interrupts = <0 0x18 0>,
150                         <0 0x19 0>;
151            clocks = <&sw_switch>, <&sw_switch_mdiv>;
152            clock-names = "sw_switch", "sw_switch_mdiv";
153            brcm,num-gphy = <1>;
154            brcm,num-rgmii-ports = <2>;
155            brcm,fcb-pause-override;
156            brcm,acb-packets-inflight;
157
158            ports {
159                    #address-cells = <1>;
160                    #size-cells = <0>;
161
162                    port@0 {
163                            label = "gphy";
164                            reg = <0>;
165                    };
166            };
167    };
~/ Read-only file preview.