1*c66ec88fSEmmanuel VadotMicrosemi Ocelot network Switch 2*c66ec88fSEmmanuel Vadot=============================== 3*c66ec88fSEmmanuel Vadot 4*c66ec88fSEmmanuel VadotThe Microsemi Ocelot network switch can be found on Microsemi SoCs (VSC7513, 5*c66ec88fSEmmanuel VadotVSC7514) 6*c66ec88fSEmmanuel Vadot 7*c66ec88fSEmmanuel VadotRequired properties: 8*c66ec88fSEmmanuel Vadot- compatible: Should be "mscc,vsc7514-switch" 9*c66ec88fSEmmanuel Vadot- reg: Must contain an (offset, length) pair of the register set for each 10*c66ec88fSEmmanuel Vadot entry in reg-names. 11*c66ec88fSEmmanuel Vadot- reg-names: Must include the following entries: 12*c66ec88fSEmmanuel Vadot - "sys" 13*c66ec88fSEmmanuel Vadot - "rew" 14*c66ec88fSEmmanuel Vadot - "qs" 15*c66ec88fSEmmanuel Vadot - "ptp" (optional due to backward compatibility) 16*c66ec88fSEmmanuel Vadot - "qsys" 17*c66ec88fSEmmanuel Vadot - "ana" 18*c66ec88fSEmmanuel Vadot - "portX" with X from 0 to the number of last port index available on that 19*c66ec88fSEmmanuel Vadot switch 20*c66ec88fSEmmanuel Vadot- interrupts: Should contain the switch interrupts for frame extraction, 21*c66ec88fSEmmanuel Vadot frame injection and PTP ready. 22*c66ec88fSEmmanuel Vadot- interrupt-names: should contain the interrupt names: "xtr", "inj". Can contain 23*c66ec88fSEmmanuel Vadot "ptp_rdy" which is optional due to backward compatibility. 24*c66ec88fSEmmanuel Vadot- ethernet-ports: A container for child nodes representing switch ports. 25*c66ec88fSEmmanuel Vadot 26*c66ec88fSEmmanuel VadotThe ethernet-ports container has the following properties 27*c66ec88fSEmmanuel Vadot 28*c66ec88fSEmmanuel VadotRequired properties: 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel Vadot- #address-cells: Must be 1 31*c66ec88fSEmmanuel Vadot- #size-cells: Must be 0 32*c66ec88fSEmmanuel Vadot 33*c66ec88fSEmmanuel VadotEach port node must have the following mandatory properties: 34*c66ec88fSEmmanuel Vadot- reg: Describes the port address in the switch 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel VadotPort nodes may also contain the following optional standardised 37*c66ec88fSEmmanuel Vadotproperties, described in binding documents: 38*c66ec88fSEmmanuel Vadot 39*c66ec88fSEmmanuel Vadot- phy-handle: Phandle to a PHY on an MDIO bus. See 40*c66ec88fSEmmanuel Vadot Documentation/devicetree/bindings/net/ethernet.txt for details. 41*c66ec88fSEmmanuel Vadot 42*c66ec88fSEmmanuel VadotExample: 43*c66ec88fSEmmanuel Vadot 44*c66ec88fSEmmanuel Vadot switch@1010000 { 45*c66ec88fSEmmanuel Vadot compatible = "mscc,vsc7514-switch"; 46*c66ec88fSEmmanuel Vadot reg = <0x1010000 0x10000>, 47*c66ec88fSEmmanuel Vadot <0x1030000 0x10000>, 48*c66ec88fSEmmanuel Vadot <0x1080000 0x100>, 49*c66ec88fSEmmanuel Vadot <0x10e0000 0x10000>, 50*c66ec88fSEmmanuel Vadot <0x11e0000 0x100>, 51*c66ec88fSEmmanuel Vadot <0x11f0000 0x100>, 52*c66ec88fSEmmanuel Vadot <0x1200000 0x100>, 53*c66ec88fSEmmanuel Vadot <0x1210000 0x100>, 54*c66ec88fSEmmanuel Vadot <0x1220000 0x100>, 55*c66ec88fSEmmanuel Vadot <0x1230000 0x100>, 56*c66ec88fSEmmanuel Vadot <0x1240000 0x100>, 57*c66ec88fSEmmanuel Vadot <0x1250000 0x100>, 58*c66ec88fSEmmanuel Vadot <0x1260000 0x100>, 59*c66ec88fSEmmanuel Vadot <0x1270000 0x100>, 60*c66ec88fSEmmanuel Vadot <0x1280000 0x100>, 61*c66ec88fSEmmanuel Vadot <0x1800000 0x80000>, 62*c66ec88fSEmmanuel Vadot <0x1880000 0x10000>; 63*c66ec88fSEmmanuel Vadot reg-names = "sys", "rew", "qs", "ptp", "port0", "port1", 64*c66ec88fSEmmanuel Vadot "port2", "port3", "port4", "port5", "port6", 65*c66ec88fSEmmanuel Vadot "port7", "port8", "port9", "port10", "qsys", 66*c66ec88fSEmmanuel Vadot "ana"; 67*c66ec88fSEmmanuel Vadot interrupts = <18 21 22>; 68*c66ec88fSEmmanuel Vadot interrupt-names = "ptp_rdy", "xtr", "inj"; 69*c66ec88fSEmmanuel Vadot 70*c66ec88fSEmmanuel Vadot ethernet-ports { 71*c66ec88fSEmmanuel Vadot #address-cells = <1>; 72*c66ec88fSEmmanuel Vadot #size-cells = <0>; 73*c66ec88fSEmmanuel Vadot 74*c66ec88fSEmmanuel Vadot port0: port@0 { 75*c66ec88fSEmmanuel Vadot reg = <0>; 76*c66ec88fSEmmanuel Vadot phy-handle = <&phy0>; 77*c66ec88fSEmmanuel Vadot }; 78*c66ec88fSEmmanuel Vadot port1: port@1 { 79*c66ec88fSEmmanuel Vadot reg = <1>; 80*c66ec88fSEmmanuel Vadot phy-handle = <&phy1>; 81*c66ec88fSEmmanuel Vadot }; 82*c66ec88fSEmmanuel Vadot }; 83*c66ec88fSEmmanuel Vadot }; 84