| Marvell DSA Switch Device Tree Bindings |
| --------------------------------------- |
| |
| WARNING: This binding is currently unstable. Do not program it into a |
| FLASH never to be changed again. Once this binding is stable, this |
| warning will be removed. |
| |
| If you need a stable binding, use the old dsa.txt binding. |
| |
| Marvell Switches are MDIO devices. The following properties should be |
| placed as a child node of an mdio device. |
| |
| The properties described here are those specific to Marvell devices. |
| Additional required and optional properties can be found in dsa.txt. |
| |
| The compatibility string is used only to find an identification register, |
| which is at a different MDIO base address in different switch families. |
| - "marvell,mv88e6085" : Switch has base address 0x10. Use with models: |
| 6085, 6095, 6097, 6123, 6131, 6141, 6161, 6165, |
| 6171, 6172, 6175, 6176, 6185, 6240, 6320, 6321, |
| 6341, 6350, 6351, 6352 |
| - "marvell,mv88e6190" : Switch has base address 0x00. Use with models: |
| 6190, 6190X, 6191, 6290, 6390, 6390X |
| - "marvell,mv88e6250" : Switch has base address 0x08 or 0x18. Use with model: |
| 6220, 6250 |
| |
| Required properties: |
| - compatible : Should be one of "marvell,mv88e6085", |
| "marvell,mv88e6190" or "marvell,mv88e6250" as |
| indicated above |
| - reg : Address on the MII bus for the switch. |
| |
| Optional properties: |
| |
| - reset-gpios : Should be a gpio specifier for a reset line |
| - interrupts : Interrupt from the switch |
| - interrupt-controller : Indicates the switch is itself an interrupt |
| controller. This is used for the PHY interrupts. |
| #interrupt-cells = <2> : Controller uses two cells, number and flag |
| - eeprom-length : Set to the length of an EEPROM connected to the |
| switch. Must be set if the switch can not detect |
| the presence and/or size of a connected EEPROM, |
| otherwise optional. |
| - mdio : Container of PHY and devices on the switches MDIO |
| bus. |
| - mdio? : Container of PHYs and devices on the external MDIO |
| bus. The node must contains a compatible string of |
| "marvell,mv88e6xxx-mdio-external" |
| |
| Example: |
| |
| mdio { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| interrupt-parent = <&gpio0>; |
| interrupts = <27 IRQ_TYPE_LEVEL_LOW>; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| |
| switch0: switch@0 { |
| compatible = "marvell,mv88e6085"; |
| reg = <0>; |
| reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; |
| |
| mdio { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| switch1phy0: switch1phy0@0 { |
| reg = <0>; |
| interrupt-parent = <&switch0>; |
| interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; |
| }; |
| }; |
| }; |
| }; |
| |
| mdio { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| interrupt-parent = <&gpio0>; |
| interrupts = <27 IRQ_TYPE_LEVEL_LOW>; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| |
| switch0: switch@0 { |
| compatible = "marvell,mv88e6390"; |
| reg = <0>; |
| reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; |
| |
| mdio { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| switch1phy0: switch1phy0@0 { |
| reg = <0>; |
| interrupt-parent = <&switch0>; |
| interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; |
| }; |
| }; |
| |
| mdio1 { |
| compatible = "marvell,mv88e6xxx-mdio-external"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| switch1phy9: switch1phy0@9 { |
| reg = <9>; |
| }; |
| }; |
| }; |
| }; |