1*e67e8565SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*e67e8565SEmmanuel Vadot%YAML 1.2 3*e67e8565SEmmanuel Vadot--- 4*e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/phy/microchip,lan966x-serdes.yaml# 5*e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*e67e8565SEmmanuel Vadot 7*e67e8565SEmmanuel Vadottitle: Microchip Lan966x Serdes controller 8*e67e8565SEmmanuel Vadot 9*e67e8565SEmmanuel Vadotmaintainers: 10*e67e8565SEmmanuel Vadot - Horatiu Vultur <horatiu.vultur@microchip.com> 11*e67e8565SEmmanuel Vadot 12*e67e8565SEmmanuel Vadotdescription: | 13*e67e8565SEmmanuel Vadot Lan966x has 7 interfaces, consisting of 2 copper transceivers(CU), 14*e67e8565SEmmanuel Vadot 3 SERDES6G and 2 RGMII interfaces. Two of the SERDES6G support QSGMII. 15*e67e8565SEmmanuel Vadot Also it has 8 logical Ethernet ports which can be connected to these 16*e67e8565SEmmanuel Vadot interfaces. The Serdes controller will allow to configure these interfaces 17*e67e8565SEmmanuel Vadot and allows to "mux" the interfaces to different ports. 18*e67e8565SEmmanuel Vadot 19*e67e8565SEmmanuel Vadot For simple selection of the interface that is used with a port, the 20*e67e8565SEmmanuel Vadot following macros are defined CU(X), SERDES6G(X), RGMII(X). Where X is a 21*e67e8565SEmmanuel Vadot number that represents the index of that interface type. For example 22*e67e8565SEmmanuel Vadot CU(1) means use interface copper transceivers 1. SERDES6G(2) means use 23*e67e8565SEmmanuel Vadot interface SerDes 2. 24*e67e8565SEmmanuel Vadot 25*e67e8565SEmmanuel Vadotproperties: 26*e67e8565SEmmanuel Vadot $nodename: 27*e67e8565SEmmanuel Vadot pattern: "^serdes@[0-9a-f]+$" 28*e67e8565SEmmanuel Vadot 29*e67e8565SEmmanuel Vadot compatible: 30*e67e8565SEmmanuel Vadot const: microchip,lan966x-serdes 31*e67e8565SEmmanuel Vadot 32*e67e8565SEmmanuel Vadot reg: 33*e67e8565SEmmanuel Vadot items: 34*e67e8565SEmmanuel Vadot - description: HSIO registers 35*e67e8565SEmmanuel Vadot - description: HW_STAT register 36*e67e8565SEmmanuel Vadot 37*e67e8565SEmmanuel Vadot '#phy-cells': 38*e67e8565SEmmanuel Vadot const: 2 39*e67e8565SEmmanuel Vadot description: | 40*e67e8565SEmmanuel Vadot - Input port to use for a given macro. 41*e67e8565SEmmanuel Vadot - The macro to be used. The macros are defined in 42*e67e8565SEmmanuel Vadot dt-bindings/phy/phy-lan966x-serdes. 43*e67e8565SEmmanuel Vadot 44*e67e8565SEmmanuel Vadotrequired: 45*e67e8565SEmmanuel Vadot - compatible 46*e67e8565SEmmanuel Vadot - reg 47*e67e8565SEmmanuel Vadot - '#phy-cells' 48*e67e8565SEmmanuel Vadot 49*e67e8565SEmmanuel VadotadditionalProperties: false 50*e67e8565SEmmanuel Vadot 51*e67e8565SEmmanuel Vadotexamples: 52*e67e8565SEmmanuel Vadot - | 53*e67e8565SEmmanuel Vadot serdes: serdes@e2004010 { 54*e67e8565SEmmanuel Vadot compatible = "microchip,lan966x-serdes"; 55*e67e8565SEmmanuel Vadot reg = <0xe202c000 0x9c>, <0xe2004010 0x4>; 56*e67e8565SEmmanuel Vadot #phy-cells = <2>; 57*e67e8565SEmmanuel Vadot }; 58*e67e8565SEmmanuel Vadot 59*e67e8565SEmmanuel Vadot... 60