Broadcom BCM53xx Ethernet switches ================================== Required properties: - compatible: For external switch chips, compatible string must be exactly one of: "brcm,bcm5325" "brcm,bcm53115" "brcm,bcm53125" "brcm,bcm53128" "brcm,bcm5365" "brcm,bcm5395" "brcm,bcm5389" "brcm,bcm5397" "brcm,bcm5398" For the BCM11360 SoC, must be: "brcm,bcm11360-srab" and the mandatory "brcm,cygnus-srab" string For the BCM5310x SoCs with an integrated switch, must be one of: "brcm,bcm53010-srab" "brcm,bcm53011-srab" "brcm,bcm53012-srab" "brcm,bcm53018-srab" "brcm,bcm53019-srab" and the mandatory "brcm,bcm5301x-srab" string For the BCM5831X/BCM1140x SoCs with an integrated switch, must be one of: "brcm,bcm11404-srab" "brcm,bcm11407-srab" "brcm,bcm11409-srab" "brcm,bcm58310-srab" "brcm,bcm58311-srab" "brcm,bcm58313-srab" and the mandatory "brcm,omega-srab" string For the BCM585xx/586XX/88312 SoCs with an integrated switch, must be one of: "brcm,bcm58522-srab" "brcm,bcm58523-srab" "brcm,bcm58525-srab" "brcm,bcm58622-srab" "brcm,bcm58623-srab" "brcm,bcm58625-srab" "brcm,bcm88312-srab" and the mandatory "brcm,nsp-srab string For the BCM63xx/33xx SoCs with an integrated switch, must be one of: "brcm,bcm3384-switch" "brcm,bcm6328-switch" "brcm,bcm6368-switch" and the mandatory "brcm,bcm63xx-switch" Required properties for BCM585xx/586xx/88312 SoCs: - reg: a total of 3 register base addresses, the first one must be the Switch Register Access block base, the second is the port 5/4 mux configuration register and the third one is the SGMII configuration and status register base address. - interrupts: a total of 13 interrupts must be specified, in the following order: port 0-5, 7-8 link status change, then the integrated PHY interrupt, then the timestamping interrupt and the sleep timer interrupts for ports 5,7,8. Optional properties for BCM585xx/586xx/88312 SoCs: - reg-names: a total of 3 names matching the 3 base register address, must be in the following order: "srab" "mux_config" "sgmii_config" - interrupt-names: a total of 13 names matching the 13 interrupts specified must be in the following order: "link_state_p0" "link_state_p1" "link_state_p2" "link_state_p3" "link_state_p4" "link_state_p5" "link_state_p7" "link_state_p8" "phy" "ts" "imp_sleep_timer_p5" "imp_sleep_timer_p7" "imp_sleep_timer_p8" See Documentation/devicetree/bindings/net/dsa/dsa.txt for a list of additional required and optional properties. Examples: Ethernet switch connected via MDIO to the host, CPU port wired to eth0: eth0: ethernet@10001000 { compatible = "brcm,unimac"; reg = <0x10001000 0x1000>; fixed-link { speed = <1000>; duplex-full; }; }; mdio0: mdio@10000000 { compatible = "brcm,unimac-mdio"; #address-cells = <1>; #size-cells = <0>; switch0: ethernet-switch@30 { compatible = "brcm,bcm53125"; #address-cells = <1>; #size-cells = <0>; ports { #address-cells = <1>; #size-cells = <0>; port0@0 { reg = <0>; label = "lan1"; }; port1@1 { reg = <1>; label = "lan2"; }; port5@5 { reg = <5>; label = "cable-modem"; fixed-link { speed = <1000>; duplex-full; }; phy-mode = "rgmii-txid"; }; port8@8 { reg = <8>; label = "cpu"; fixed-link { speed = <1000>; duplex-full; }; phy-mode = "rgmii-txid"; ethernet = <ð0>; }; }; }; };