1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2fac71e4eSEmmanuel Vadot%YAML 1.2 3fac71e4eSEmmanuel Vadot--- 4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/net/pcs/mediatek,sgmiisys.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6fac71e4eSEmmanuel Vadot 7fac71e4eSEmmanuel Vadottitle: MediaTek SGMIISYS Controller 8fac71e4eSEmmanuel Vadot 9fac71e4eSEmmanuel Vadotmaintainers: 10fac71e4eSEmmanuel Vadot - Matthias Brugger <matthias.bgg@gmail.com> 11fac71e4eSEmmanuel Vadot 12fac71e4eSEmmanuel Vadotdescription: 13fac71e4eSEmmanuel Vadot The MediaTek SGMIISYS controller provides a SGMII PCS and some clocks 14fac71e4eSEmmanuel Vadot to the ethernet subsystem to which it is attached. 15fac71e4eSEmmanuel Vadot 16fac71e4eSEmmanuel Vadotproperties: 17fac71e4eSEmmanuel Vadot compatible: 18*8d13bc63SEmmanuel Vadot oneOf: 19*8d13bc63SEmmanuel Vadot - items: 20fac71e4eSEmmanuel Vadot - enum: 21fac71e4eSEmmanuel Vadot - mediatek,mt7622-sgmiisys 22fac71e4eSEmmanuel Vadot - mediatek,mt7629-sgmiisys 23fac71e4eSEmmanuel Vadot - mediatek,mt7981-sgmiisys_0 24fac71e4eSEmmanuel Vadot - mediatek,mt7981-sgmiisys_1 25fac71e4eSEmmanuel Vadot - mediatek,mt7986-sgmiisys_0 26fac71e4eSEmmanuel Vadot - mediatek,mt7986-sgmiisys_1 27fac71e4eSEmmanuel Vadot - const: syscon 28*8d13bc63SEmmanuel Vadot - items: 29*8d13bc63SEmmanuel Vadot - enum: 30*8d13bc63SEmmanuel Vadot - mediatek,mt7988-sgmiisys0 31*8d13bc63SEmmanuel Vadot - mediatek,mt7988-sgmiisys1 32*8d13bc63SEmmanuel Vadot - const: simple-mfd 33*8d13bc63SEmmanuel Vadot - const: syscon 34fac71e4eSEmmanuel Vadot 35fac71e4eSEmmanuel Vadot reg: 36fac71e4eSEmmanuel Vadot maxItems: 1 37fac71e4eSEmmanuel Vadot 38fac71e4eSEmmanuel Vadot '#clock-cells': 39fac71e4eSEmmanuel Vadot const: 1 40fac71e4eSEmmanuel Vadot 41fac71e4eSEmmanuel Vadot mediatek,pnswap: 42fac71e4eSEmmanuel Vadot description: Invert polarity of the SGMII data lanes 43fac71e4eSEmmanuel Vadot type: boolean 44fac71e4eSEmmanuel Vadot 45*8d13bc63SEmmanuel Vadot pcs: 46*8d13bc63SEmmanuel Vadot type: object 47*8d13bc63SEmmanuel Vadot description: MediaTek LynxI HSGMII PCS 48*8d13bc63SEmmanuel Vadot properties: 49*8d13bc63SEmmanuel Vadot compatible: 50*8d13bc63SEmmanuel Vadot const: mediatek,mt7988-sgmii 51*8d13bc63SEmmanuel Vadot 52*8d13bc63SEmmanuel Vadot clocks: 53*8d13bc63SEmmanuel Vadot maxItems: 3 54*8d13bc63SEmmanuel Vadot 55*8d13bc63SEmmanuel Vadot clock-names: 56*8d13bc63SEmmanuel Vadot items: 57*8d13bc63SEmmanuel Vadot - const: sgmii_sel 58*8d13bc63SEmmanuel Vadot - const: sgmii_tx 59*8d13bc63SEmmanuel Vadot - const: sgmii_rx 60*8d13bc63SEmmanuel Vadot 61*8d13bc63SEmmanuel Vadot required: 62*8d13bc63SEmmanuel Vadot - compatible 63*8d13bc63SEmmanuel Vadot - clocks 64*8d13bc63SEmmanuel Vadot - clock-names 65*8d13bc63SEmmanuel Vadot 66*8d13bc63SEmmanuel Vadot additionalProperties: false 67*8d13bc63SEmmanuel Vadot 68fac71e4eSEmmanuel Vadotrequired: 69fac71e4eSEmmanuel Vadot - compatible 70fac71e4eSEmmanuel Vadot - reg 71fac71e4eSEmmanuel Vadot - '#clock-cells' 72fac71e4eSEmmanuel Vadot 73*8d13bc63SEmmanuel VadotallOf: 74*8d13bc63SEmmanuel Vadot - if: 75*8d13bc63SEmmanuel Vadot properties: 76*8d13bc63SEmmanuel Vadot compatible: 77*8d13bc63SEmmanuel Vadot contains: 78*8d13bc63SEmmanuel Vadot enum: 79*8d13bc63SEmmanuel Vadot - mediatek,mt7988-sgmiisys0 80*8d13bc63SEmmanuel Vadot - mediatek,mt7988-sgmiisys1 81*8d13bc63SEmmanuel Vadot 82*8d13bc63SEmmanuel Vadot then: 83*8d13bc63SEmmanuel Vadot required: 84*8d13bc63SEmmanuel Vadot - pcs 85*8d13bc63SEmmanuel Vadot 86*8d13bc63SEmmanuel Vadot else: 87*8d13bc63SEmmanuel Vadot properties: 88*8d13bc63SEmmanuel Vadot pcs: false 89*8d13bc63SEmmanuel Vadot 90fac71e4eSEmmanuel VadotadditionalProperties: false 91fac71e4eSEmmanuel Vadot 92fac71e4eSEmmanuel Vadotexamples: 93fac71e4eSEmmanuel Vadot - | 94fac71e4eSEmmanuel Vadot soc { 95fac71e4eSEmmanuel Vadot #address-cells = <2>; 96fac71e4eSEmmanuel Vadot #size-cells = <2>; 97fac71e4eSEmmanuel Vadot sgmiisys: syscon@1b128000 { 98fac71e4eSEmmanuel Vadot compatible = "mediatek,mt7622-sgmiisys", "syscon"; 99fac71e4eSEmmanuel Vadot reg = <0 0x1b128000 0 0x1000>; 100fac71e4eSEmmanuel Vadot #clock-cells = <1>; 101fac71e4eSEmmanuel Vadot }; 102fac71e4eSEmmanuel Vadot }; 103