* Broadcom Starfighter 2 integrated swich Required properties: - compatible: should be one of "brcm,bcm7445-switch-v4.0" "brcm,bcm7278-switch-v4.0" "brcm,bcm7278-switch-v4.8" - reg: addresses and length of the register sets for the device, must be 6 pairs of register addresses and lengths - interrupts: interrupts for the devices, must be two interrupts - #address-cells: must be 1, see dsa/dsa.txt - #size-cells: must be 0, see dsa/dsa.txt Deprecated binding required properties: - dsa,mii-bus: phandle to the MDIO bus controller, see dsa/dsa.txt - dsa,ethernet: phandle to the CPU network interface controller, see dsa/dsa.txt - #address-cells: must be 2, see dsa/dsa.txt Subnodes: The integrated switch subnode should be specified according to the binding described in dsa/dsa.txt. Optional properties: - reg-names: litteral names for the device base register addresses, when present must be: "core", "reg", "intrl2_0", "intrl2_1", "fcb", "acb" - interrupt-names: litternal names for the device interrupt lines, when present must be: "switch_0" and "switch_1" - brcm,num-gphy: specify the maximum number of integrated gigabit PHYs in the switch - brcm,num-rgmii-ports: specify the maximum number of RGMII interfaces supported by the switch - brcm,fcb-pause-override: boolean property, if present indicates that the switch supports Failover Control Block pause override capability - brcm,acb-packets-inflight: boolean property, if present indicates that the switch Admission Control Block supports reporting the number of packets in-flight in a switch queue Port subnodes: Optional properties: - brcm,use-bcm-hdr: boolean property, if present, indicates that the switch port has Broadcom tags enabled (per-packet metadata) Example: switch_top@f0b00000 { compatible = "simple-bus"; #size-cells = <1>; #address-cells = <1>; ranges = <0 0xf0b00000 0x40804>; ethernet_switch@0 { compatible = "brcm,bcm7445-switch-v4.0"; #size-cells = <0>; #address-cells = <1>; reg = <0x0 0x40000 0x40000 0x110 0x40340 0x30 0x40380 0x30 0x40400 0x34 0x40600 0x208>; reg-names = "core", "reg", intrl2_0", "intrl2_1", "fcb, "acb"; interrupts = <0 0x18 0 0 0x19 0>; brcm,num-gphy = <1>; brcm,num-rgmii-ports = <2>; brcm,fcb-pause-override; brcm,acb-packets-inflight; ports { #address-cells = <1>; #size-cells = <0>; port@0 { label = "gphy"; reg = <0>; }; }; }; }; Example using the old DSA DeviceTree binding: switch_top@f0b00000 { compatible = "simple-bus"; #size-cells = <1>; #address-cells = <1>; ranges = <0 0xf0b00000 0x40804>; ethernet_switch@0 { compatible = "brcm,bcm7445-switch-v4.0"; #size-cells = <0>; #address-cells = <2>; reg = <0x0 0x40000 0x40000 0x110 0x40340 0x30 0x40380 0x30 0x40400 0x34 0x40600 0x208>; interrupts = <0 0x18 0 0 0x19 0>; brcm,num-gphy = <1>; brcm,num-rgmii-ports = <2>; brcm,fcb-pause-override; brcm,acb-packets-inflight; ... switch@0 { reg = <0 0>; #size-cells = <0>; #address-cells <1>; port@0 { label = "gphy"; reg = <0>; brcm,use-bcm-hdr; }; ... }; }; };