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 7*47aab533SBjorn 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 81c7ee3a40SRafał Miłecki 82afdc0aabSColin Foster patternProperties: 83afdc0aabSColin Foster '^port@[0-9a-f]$': 84afdc0aabSColin Foster $ref: dsa-port.yaml# 85afdc0aabSColin Foster unevaluatedProperties: false 86afdc0aabSColin Foster 87c7ee3a40SRafał Miłecki properties: 88c7ee3a40SRafał Miłecki brcm,use-bcm-hdr: 89c7ee3a40SRafał Miłecki description: if present, indicates that the switch port has Broadcom 90c7ee3a40SRafał Miłecki tags enabled (per-packet metadata) 91c7ee3a40SRafał Miłecki type: boolean 92c7ee3a40SRafał Miłecki 93c7ee3a40SRafał Miłeckirequired: 94c7ee3a40SRafał Miłecki - reg 95c7ee3a40SRafał Miłecki - interrupts 96c7ee3a40SRafał Miłecki 97c7ee3a40SRafał MiłeckiallOf: 983079bfdbSRob Herring - $ref: dsa.yaml# 99c7ee3a40SRafał Miłecki - if: 100c7ee3a40SRafał Miłecki properties: 101c7ee3a40SRafał Miłecki compatible: 102c7ee3a40SRafał Miłecki contains: 103c7ee3a40SRafał Miłecki enum: 104c7ee3a40SRafał Miłecki - brcm,bcm7278-switch-v4.0 105c7ee3a40SRafał Miłecki - brcm,bcm7278-switch-v4.8 106c7ee3a40SRafał Miłecki then: 107c7ee3a40SRafał Miłecki properties: 108c7ee3a40SRafał Miłecki clocks: 109c7ee3a40SRafał Miłecki minItems: 1 110c7ee3a40SRafał Miłecki maxItems: 1 111c7ee3a40SRafał Miłecki clock-names: 112c7ee3a40SRafał Miłecki minItems: 1 113c7ee3a40SRafał Miłecki maxItems: 1 114c7ee3a40SRafał Miłecki required: 115c7ee3a40SRafał Miłecki - clocks 116c7ee3a40SRafał Miłecki - clock-names 117c7ee3a40SRafał Miłecki - if: 118c7ee3a40SRafał Miłecki properties: 119c7ee3a40SRafał Miłecki compatible: 120c7ee3a40SRafał Miłecki contains: 121c7ee3a40SRafał Miłecki const: brcm,bcm7445-switch-v4.0 122c7ee3a40SRafał Miłecki then: 123c7ee3a40SRafał Miłecki properties: 124c7ee3a40SRafał Miłecki clocks: 125c7ee3a40SRafał Miłecki minItems: 2 126c7ee3a40SRafał Miłecki maxItems: 2 127c7ee3a40SRafał Miłecki clock-names: 128c7ee3a40SRafał Miłecki minItems: 2 129c7ee3a40SRafał Miłecki maxItems: 2 130c7ee3a40SRafał Miłecki required: 131c7ee3a40SRafał Miłecki - clocks 132c7ee3a40SRafał Miłecki - clock-names 133c7ee3a40SRafał Miłecki 134c7ee3a40SRafał MiłeckiadditionalProperties: false 135c7ee3a40SRafał Miłecki 136c7ee3a40SRafał Miłeckiexamples: 137c7ee3a40SRafał Miłecki - | 138c7ee3a40SRafał Miłecki switch@f0b00000 { 139c7ee3a40SRafał Miłecki compatible = "brcm,bcm7445-switch-v4.0"; 140c7ee3a40SRafał Miłecki reg = <0xf0b00000 0x40000>, 141c7ee3a40SRafał Miłecki <0xf0b40000 0x110>, 142c7ee3a40SRafał Miłecki <0xf0b40340 0x30>, 143c7ee3a40SRafał Miłecki <0xf0b40380 0x30>, 144c7ee3a40SRafał Miłecki <0xf0b40400 0x34>, 145c7ee3a40SRafał Miłecki <0xf0b40600 0x208>; 146c7ee3a40SRafał Miłecki reg-names = "core", "reg", "intrl2_0", "intrl2_1", 147c7ee3a40SRafał Miłecki "fcb", "acb"; 148c7ee3a40SRafał Miłecki interrupts = <0 0x18 0>, 149c7ee3a40SRafał Miłecki <0 0x19 0>; 150c7ee3a40SRafał Miłecki clocks = <&sw_switch>, <&sw_switch_mdiv>; 151c7ee3a40SRafał Miłecki clock-names = "sw_switch", "sw_switch_mdiv"; 152c7ee3a40SRafał Miłecki brcm,num-gphy = <1>; 153c7ee3a40SRafał Miłecki brcm,num-rgmii-ports = <2>; 154c7ee3a40SRafał Miłecki brcm,fcb-pause-override; 155c7ee3a40SRafał Miłecki brcm,acb-packets-inflight; 156c7ee3a40SRafał Miłecki 157c7ee3a40SRafał Miłecki ports { 158c7ee3a40SRafał Miłecki #address-cells = <1>; 159c7ee3a40SRafał Miłecki #size-cells = <0>; 160c7ee3a40SRafał Miłecki 161c7ee3a40SRafał Miłecki port@0 { 162c7ee3a40SRafał Miłecki label = "gphy"; 163c7ee3a40SRafał Miłecki reg = <0>; 164c7ee3a40SRafał Miłecki }; 165c7ee3a40SRafał Miłecki }; 166c7ee3a40SRafał Miłecki }; 167