1Marvell DSA Switch Device Tree Bindings 2--------------------------------------- 3 4WARNING: This binding is currently unstable. Do not program it into a 5FLASH never to be changed again. Once this binding is stable, this 6warning will be removed. 7 8If you need a stable binding, use the old dsa.txt binding. 9 10Marvell Switches are MDIO devices. The following properties should be 11placed as a child node of an mdio device. 12 13The properties described here are those specific to Marvell devices. 14Additional required and optional properties can be found in dsa.txt. 15 16Required properties: 17- compatible : Should be one of "marvell,mv88e6085" or 18 "marvell,mv88e6190" 19- reg : Address on the MII bus for the switch. 20 21Optional properties: 22 23- reset-gpios : Should be a gpio specifier for a reset line 24- interrupt-parent : Parent interrupt controller 25- interrupts : Interrupt from the switch 26- interrupt-controller : Indicates the switch is itself an interrupt 27 controller. This is used for the PHY interrupts. 28#interrupt-cells = <2> : Controller uses two cells, number and flag 29- mdio : Container of PHY and devices on the switches MDIO 30 bus. 31- mdio? : Container of PHYs and devices on the external MDIO 32 bus. The node must contains a compatible string of 33 "marvell,mv88e6xxx-mdio-external" 34 35Example: 36 37 mdio { 38 #address-cells = <1>; 39 #size-cells = <0>; 40 interrupt-parent = <&gpio0>; 41 interrupts = <27 IRQ_TYPE_LEVEL_LOW>; 42 interrupt-controller; 43 #interrupt-cells = <2>; 44 45 switch0: switch@0 { 46 compatible = "marvell,mv88e6085"; 47 reg = <0>; 48 reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; 49 }; 50 mdio { 51 #address-cells = <1>; 52 #size-cells = <0>; 53 switch1phy0: switch1phy0@0 { 54 reg = <0>; 55 interrupt-parent = <&switch0>; 56 interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; 57 }; 58 }; 59 }; 60 61 mdio { 62 #address-cells = <1>; 63 #size-cells = <0>; 64 interrupt-parent = <&gpio0>; 65 interrupts = <27 IRQ_TYPE_LEVEL_LOW>; 66 interrupt-controller; 67 #interrupt-cells = <2>; 68 69 switch0: switch@0 { 70 compatible = "marvell,mv88e6390"; 71 reg = <0>; 72 reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; 73 }; 74 mdio { 75 #address-cells = <1>; 76 #size-cells = <0>; 77 switch1phy0: switch1phy0@0 { 78 reg = <0>; 79 interrupt-parent = <&switch0>; 80 interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; 81 }; 82 }; 83 84 mdio1 { 85 compatible = "marvell,mv88e6xxx-mdio-external"; 86 #address-cells = <1>; 87 #size-cells = <0>; 88 switch1phy9: switch1phy0@9 { 89 reg = <9>; 90 }; 91 }; 92 }; 93