Andrew Lunn | 14c7b3c | 2016-05-10 23:27:21 +0200 | [diff] [blame] | 1 | Marvell DSA Switch Device Tree Bindings |
| 2 | --------------------------------------- |
| 3 | |
| 4 | WARNING: This binding is currently unstable. Do not program it into a |
| 5 | FLASH never to be changed again. Once this binding is stable, this |
| 6 | warning will be removed. |
| 7 | |
| 8 | If you need a stable binding, use the old dsa.txt binding. |
| 9 | |
| 10 | Marvell Switches are MDIO devices. The following properties should be |
| 11 | placed as a child node of an mdio device. |
| 12 | |
Andrew Lunn | 52638f7 | 2016-05-10 23:27:22 +0200 | [diff] [blame] | 13 | The properties described here are those specific to Marvell devices. |
| 14 | Additional required and optional properties can be found in dsa.txt. |
| 15 | |
Andrew Lunn | 14c7b3c | 2016-05-10 23:27:21 +0200 | [diff] [blame] | 16 | Required properties: |
Andrew Lunn | 1a3b39e | 2016-11-21 23:26:57 +0100 | [diff] [blame] | 17 | - compatible : Should be one of "marvell,mv88e6085" or |
| 18 | "marvell,mv88e6190" |
Andrew Lunn | 14c7b3c | 2016-05-10 23:27:21 +0200 | [diff] [blame] | 19 | - reg : Address on the MII bus for the switch. |
| 20 | |
Andrew Lunn | 52638f7 | 2016-05-10 23:27:22 +0200 | [diff] [blame] | 21 | Optional properties: |
| 22 | |
| 23 | - reset-gpios : Should be a gpio specifier for a reset line |
Andrew Lunn | dc30c35 | 2016-10-16 19:56:49 +0200 | [diff] [blame] | 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 |
Andrew Lunn | 14c7b3c | 2016-05-10 23:27:21 +0200 | [diff] [blame] | 31 | Example: |
| 32 | |
| 33 | mdio { |
| 34 | #address-cells = <1>; |
| 35 | #size-cells = <0>; |
Andrew Lunn | dc30c35 | 2016-10-16 19:56:49 +0200 | [diff] [blame] | 36 | interrupt-parent = <&gpio0>; |
| 37 | interrupts = <27 IRQ_TYPE_LEVEL_LOW>; |
| 38 | interrupt-controller; |
| 39 | #interrupt-cells = <2>; |
Andrew Lunn | 14c7b3c | 2016-05-10 23:27:21 +0200 | [diff] [blame] | 40 | |
| 41 | switch0: switch@0 { |
| 42 | compatible = "marvell,mv88e6085"; |
| 43 | reg = <0>; |
Andrew Lunn | 52638f7 | 2016-05-10 23:27:22 +0200 | [diff] [blame] | 44 | reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; |
Andrew Lunn | 14c7b3c | 2016-05-10 23:27:21 +0200 | [diff] [blame] | 45 | }; |
Andrew Lunn | dc30c35 | 2016-10-16 19:56:49 +0200 | [diff] [blame] | 46 | mdio { |
| 47 | #address-cells = <1>; |
| 48 | #size-cells = <0>; |
| 49 | switch1phy0: switch1phy0@0 { |
| 50 | reg = <0>; |
| 51 | interrupt-parent = <&switch0>; |
| 52 | interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; |
| 53 | }; |
| 54 | }; |
Andrew Lunn | 14c7b3c | 2016-05-10 23:27:21 +0200 | [diff] [blame] | 55 | }; |