1603094b2SGerhard Engleder# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2603094b2SGerhard Engleder%YAML 1.2 3603094b2SGerhard Engleder--- 4603094b2SGerhard Engleder$id: http://devicetree.org/schemas/net/engleder,tsnep.yaml# 5603094b2SGerhard Engleder$schema: http://devicetree.org/meta-schemas/core.yaml# 6603094b2SGerhard Engleder 7603094b2SGerhard Engledertitle: TSN endpoint Ethernet MAC binding 8603094b2SGerhard Engleder 9603094b2SGerhard Engledermaintainers: 10603094b2SGerhard Engleder - Gerhard Engleder <gerhard@engleder-embedded.com> 11603094b2SGerhard Engleder 12603094b2SGerhard EnglederallOf: 13603094b2SGerhard Engleder - $ref: ethernet-controller.yaml# 14603094b2SGerhard Engleder 15603094b2SGerhard Englederproperties: 16603094b2SGerhard Engleder compatible: 17603094b2SGerhard Engleder const: engleder,tsnep 18603094b2SGerhard Engleder 19603094b2SGerhard Engleder reg: 20603094b2SGerhard Engleder maxItems: 1 21603094b2SGerhard Engleder 22603094b2SGerhard Engleder interrupts: 23*60e1b494SGerhard Engleder minItems: 1 24*60e1b494SGerhard Engleder maxItems: 8 25*60e1b494SGerhard Engleder 26*60e1b494SGerhard Engleder interrupt-names: 27*60e1b494SGerhard Engleder minItems: 1 28*60e1b494SGerhard Engleder items: 29*60e1b494SGerhard Engleder - const: mac 30*60e1b494SGerhard Engleder - const: txrx-1 31*60e1b494SGerhard Engleder - const: txrx-2 32*60e1b494SGerhard Engleder - const: txrx-3 33*60e1b494SGerhard Engleder - const: txrx-4 34*60e1b494SGerhard Engleder - const: txrx-5 35*60e1b494SGerhard Engleder - const: txrx-6 36*60e1b494SGerhard Engleder - const: txrx-7 37*60e1b494SGerhard Engleder description: 38*60e1b494SGerhard Engleder The main interrupt for basic MAC features and the first TX/RX queue pair 39*60e1b494SGerhard Engleder is named "mac". "txrx-[1-7]" are the interrupts for additional TX/RX 40*60e1b494SGerhard Engleder queue pairs. 41603094b2SGerhard Engleder 42ff46c610SGerhard Engleder dma-coherent: true 43ff46c610SGerhard Engleder 44603094b2SGerhard Engleder local-mac-address: true 45603094b2SGerhard Engleder 46603094b2SGerhard Engleder mac-address: true 47603094b2SGerhard Engleder 48603094b2SGerhard Engleder nvmem-cells: true 49603094b2SGerhard Engleder 50603094b2SGerhard Engleder nvmem-cells-names: true 51603094b2SGerhard Engleder 52603094b2SGerhard Engleder phy-connection-type: 53603094b2SGerhard Engleder enum: 54603094b2SGerhard Engleder - mii 55603094b2SGerhard Engleder - gmii 56603094b2SGerhard Engleder - rgmii 57603094b2SGerhard Engleder - rgmii-id 58603094b2SGerhard Engleder 59603094b2SGerhard Engleder phy-mode: true 60603094b2SGerhard Engleder 61603094b2SGerhard Engleder phy-handle: true 62603094b2SGerhard Engleder 63603094b2SGerhard Engleder mdio: 64603094b2SGerhard Engleder type: object 65603094b2SGerhard Engleder $ref: "mdio.yaml#" 66603094b2SGerhard Engleder description: optional node for embedded MDIO controller 67603094b2SGerhard Engleder 68603094b2SGerhard Englederrequired: 69603094b2SGerhard Engleder - compatible 70603094b2SGerhard Engleder - reg 71603094b2SGerhard Engleder - interrupts 72603094b2SGerhard Engleder 73603094b2SGerhard EnglederadditionalProperties: false 74603094b2SGerhard Engleder 75603094b2SGerhard Englederexamples: 76603094b2SGerhard Engleder - | 77603094b2SGerhard Engleder axi { 78603094b2SGerhard Engleder #address-cells = <2>; 79603094b2SGerhard Engleder #size-cells = <2>; 80*60e1b494SGerhard Engleder tsnep0: ethernet@a0000000 { 81603094b2SGerhard Engleder compatible = "engleder,tsnep"; 82603094b2SGerhard Engleder reg = <0x0 0xa0000000 0x0 0x10000>; 83603094b2SGerhard Engleder interrupts = <0 89 1>; 84603094b2SGerhard Engleder interrupt-parent = <&gic>; 85603094b2SGerhard Engleder local-mac-address = [00 00 00 00 00 00]; 86603094b2SGerhard Engleder phy-mode = "rgmii"; 87603094b2SGerhard Engleder phy-handle = <&phy0>; 88603094b2SGerhard Engleder mdio { 89603094b2SGerhard Engleder #address-cells = <1>; 90603094b2SGerhard Engleder #size-cells = <0>; 91603094b2SGerhard Engleder suppress-preamble; 92603094b2SGerhard Engleder phy0: ethernet-phy@1 { 93603094b2SGerhard Engleder reg = <1>; 94603094b2SGerhard Engleder rxc-skew-ps = <1080>; 95603094b2SGerhard Engleder }; 96603094b2SGerhard Engleder }; 97603094b2SGerhard Engleder }; 98*60e1b494SGerhard Engleder 99*60e1b494SGerhard Engleder tsnep1: ethernet@a0010000 { 100*60e1b494SGerhard Engleder compatible = "engleder,tsnep"; 101*60e1b494SGerhard Engleder reg = <0x0 0xa0010000 0x0 0x10000>; 102*60e1b494SGerhard Engleder interrupts = <0 93 1>, <0 94 1>, <0 95 1>, <0 96 1>; 103*60e1b494SGerhard Engleder interrupt-names = "mac", "txrx-1", "txrx-2", "txrx-3"; 104*60e1b494SGerhard Engleder interrupt-parent = <&gic>; 105*60e1b494SGerhard Engleder local-mac-address = [00 00 00 00 00 00]; 106*60e1b494SGerhard Engleder phy-mode = "rgmii"; 107*60e1b494SGerhard Engleder phy-handle = <&phy1>; 108*60e1b494SGerhard Engleder mdio { 109*60e1b494SGerhard Engleder #address-cells = <1>; 110*60e1b494SGerhard Engleder #size-cells = <0>; 111*60e1b494SGerhard Engleder suppress-preamble; 112*60e1b494SGerhard Engleder phy1: ethernet-phy@1 { 113*60e1b494SGerhard Engleder reg = <1>; 114*60e1b494SGerhard Engleder rxc-skew-ps = <1080>; 115*60e1b494SGerhard Engleder }; 116*60e1b494SGerhard Engleder }; 117*60e1b494SGerhard Engleder }; 118603094b2SGerhard Engleder }; 119