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