101 lines · plain
1SMSC/MicroChip LAN9303 three port ethernet switch2-------------------------------------------------3 4Required properties:5 6- compatible: should be7 - "smsc,lan9303-i2c" for I2C managed mode8 or9 - "smsc,lan9303-mdio" for mdio managed mode10 11Optional properties:12 13- reset-gpios: GPIO to be used to reset the whole device14- reset-duration: reset duration in milliseconds, defaults to 200 ms15 16Subnodes:17 18The integrated switch subnode should be specified according to the binding19described in dsa/dsa.txt. The CPU port of this switch is always port 0.20 21Note: always use 'reg = <0/1/2>;' for the three DSA ports, even if the device is22configured to use 1/2/3 instead. This hardware configuration will be23auto-detected and mapped accordingly.24 25Example:26 27I2C managed mode:28 29 master: masterdevice@X {30 31 fixed-link { /* RMII fixed link to LAN9303 */32 speed = <100>;33 full-duplex;34 };35 };36 37 switch: switch@a {38 compatible = "smsc,lan9303-i2c";39 reg = <0xa>;40 reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;41 reset-duration = <200>;42 43 ports {44 #address-cells = <1>;45 #size-cells = <0>;46 47 port@0 { /* RMII fixed link to master */48 reg = <0>;49 ethernet = <&master>;50 };51 52 port@1 { /* external port 1 */53 reg = <1>;54 label = "lan1";55 };56 57 port@2 { /* external port 2 */58 reg = <2>;59 label = "lan2";60 };61 };62 };63 64MDIO managed mode:65 66 master: masterdevice@X {67 phy-handle = <&switch>;68 69 mdio {70 #address-cells = <1>;71 #size-cells = <0>;72 73 switch: switch-phy@0 {74 compatible = "smsc,lan9303-mdio";75 reg = <0>;76 reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;77 reset-duration = <100>;78 79 ports {80 #address-cells = <1>;81 #size-cells = <0>;82 83 port@0 {84 reg = <0>;85 ethernet = <&master>;86 };87 88 port@1 { /* external port 1 */89 reg = <1>;90 label = "lan1";91 };92 93 port@2 { /* external port 2 */94 reg = <2>;95 label = "lan2";96 };97 };98 };99 };100 };101