17ef62cebSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 27ef62cebSEmmanuel Vadot%YAML 1.2 37ef62cebSEmmanuel Vadot--- 47ef62cebSEmmanuel Vadot$id: http://devicetree.org/schemas/net/altr,tse.yaml# 57ef62cebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 67ef62cebSEmmanuel Vadot 77ef62cebSEmmanuel Vadottitle: Altera Triple Speed Ethernet MAC driver (TSE) 87ef62cebSEmmanuel Vadot 97ef62cebSEmmanuel Vadotmaintainers: 107ef62cebSEmmanuel Vadot - Maxime Chevallier <maxime.chevallier@bootlin.com> 117ef62cebSEmmanuel Vadot 127ef62cebSEmmanuel Vadotproperties: 137ef62cebSEmmanuel Vadot compatible: 147ef62cebSEmmanuel Vadot oneOf: 157ef62cebSEmmanuel Vadot - const: altr,tse-1.0 167ef62cebSEmmanuel Vadot - const: ALTR,tse-1.0 177ef62cebSEmmanuel Vadot deprecated: true 187ef62cebSEmmanuel Vadot - const: altr,tse-msgdma-1.0 197ef62cebSEmmanuel Vadot 207ef62cebSEmmanuel Vadot interrupts: 217ef62cebSEmmanuel Vadot minItems: 2 227ef62cebSEmmanuel Vadot 237ef62cebSEmmanuel Vadot interrupt-names: 247ef62cebSEmmanuel Vadot items: 257ef62cebSEmmanuel Vadot - const: rx_irq 267ef62cebSEmmanuel Vadot - const: tx_irq 277ef62cebSEmmanuel Vadot 287ef62cebSEmmanuel Vadot rx-fifo-depth: 297ef62cebSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 307ef62cebSEmmanuel Vadot description: 317ef62cebSEmmanuel Vadot Depth in bytes of the RX FIFO 327ef62cebSEmmanuel Vadot 337ef62cebSEmmanuel Vadot tx-fifo-depth: 347ef62cebSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 357ef62cebSEmmanuel Vadot description: 367ef62cebSEmmanuel Vadot Depth in bytes of the TX FIFO 377ef62cebSEmmanuel Vadot 387ef62cebSEmmanuel Vadot altr,has-supplementary-unicast: 397ef62cebSEmmanuel Vadot type: boolean 407ef62cebSEmmanuel Vadot description: 417ef62cebSEmmanuel Vadot If present, TSE supports additional unicast addresses. 427ef62cebSEmmanuel Vadot 437ef62cebSEmmanuel Vadot altr,has-hash-multicast-filter: 447ef62cebSEmmanuel Vadot type: boolean 457ef62cebSEmmanuel Vadot description: 467ef62cebSEmmanuel Vadot If present, TSE supports hash based multicast filter. 477ef62cebSEmmanuel Vadot 487ef62cebSEmmanuel Vadot mdio: 497ef62cebSEmmanuel Vadot $ref: mdio.yaml# 507ef62cebSEmmanuel Vadot unevaluatedProperties: false 517ef62cebSEmmanuel Vadot description: 527ef62cebSEmmanuel Vadot Creates and registers an MDIO bus. 537ef62cebSEmmanuel Vadot 547ef62cebSEmmanuel Vadot properties: 557ef62cebSEmmanuel Vadot compatible: 567ef62cebSEmmanuel Vadot const: altr,tse-mdio 577ef62cebSEmmanuel Vadot 587ef62cebSEmmanuel Vadot required: 597ef62cebSEmmanuel Vadot - compatible 607ef62cebSEmmanuel Vadot 617ef62cebSEmmanuel Vadotrequired: 627ef62cebSEmmanuel Vadot - compatible 637ef62cebSEmmanuel Vadot - reg 647ef62cebSEmmanuel Vadot - interrupts 657ef62cebSEmmanuel Vadot - rx-fifo-depth 667ef62cebSEmmanuel Vadot - tx-fifo-depth 677ef62cebSEmmanuel Vadot 687ef62cebSEmmanuel VadotallOf: 69fac71e4eSEmmanuel Vadot - $ref: ethernet-controller.yaml# 707ef62cebSEmmanuel Vadot - if: 717ef62cebSEmmanuel Vadot properties: 727ef62cebSEmmanuel Vadot compatible: 737ef62cebSEmmanuel Vadot contains: 747ef62cebSEmmanuel Vadot enum: 75*f126890aSEmmanuel Vadot - altr,tse-1.0 76*f126890aSEmmanuel Vadot - ALTR,tse-1.0 777ef62cebSEmmanuel Vadot then: 787ef62cebSEmmanuel Vadot properties: 797ef62cebSEmmanuel Vadot reg: 807ef62cebSEmmanuel Vadot minItems: 4 817ef62cebSEmmanuel Vadot reg-names: 827ef62cebSEmmanuel Vadot items: 837ef62cebSEmmanuel Vadot - const: control_port 847ef62cebSEmmanuel Vadot - const: rx_csr 857ef62cebSEmmanuel Vadot - const: tx_csr 867ef62cebSEmmanuel Vadot - const: s1 877ef62cebSEmmanuel Vadot 887ef62cebSEmmanuel Vadot - if: 897ef62cebSEmmanuel Vadot properties: 907ef62cebSEmmanuel Vadot compatible: 917ef62cebSEmmanuel Vadot contains: 927ef62cebSEmmanuel Vadot enum: 937ef62cebSEmmanuel Vadot - altr,tse-msgdma-1.0 947ef62cebSEmmanuel Vadot then: 957ef62cebSEmmanuel Vadot properties: 967ef62cebSEmmanuel Vadot reg: 977ef62cebSEmmanuel Vadot minItems: 6 987ef62cebSEmmanuel Vadot maxItems: 7 997ef62cebSEmmanuel Vadot reg-names: 1007ef62cebSEmmanuel Vadot minItems: 6 1017ef62cebSEmmanuel Vadot items: 1027ef62cebSEmmanuel Vadot - const: control_port 1037ef62cebSEmmanuel Vadot - const: rx_csr 1047ef62cebSEmmanuel Vadot - const: rx_desc 1057ef62cebSEmmanuel Vadot - const: rx_resp 1067ef62cebSEmmanuel Vadot - const: tx_csr 1077ef62cebSEmmanuel Vadot - const: tx_desc 1087ef62cebSEmmanuel Vadot - const: pcs 1097ef62cebSEmmanuel Vadot 1107ef62cebSEmmanuel VadotunevaluatedProperties: false 1117ef62cebSEmmanuel Vadot 1127ef62cebSEmmanuel Vadotexamples: 1137ef62cebSEmmanuel Vadot - | 1147ef62cebSEmmanuel Vadot tse_sub_0: ethernet@c0100000 { 1157ef62cebSEmmanuel Vadot compatible = "altr,tse-msgdma-1.0"; 1167ef62cebSEmmanuel Vadot reg = <0xc0100000 0x00000400>, 1177ef62cebSEmmanuel Vadot <0xc0101000 0x00000020>, 1187ef62cebSEmmanuel Vadot <0xc0102000 0x00000020>, 1197ef62cebSEmmanuel Vadot <0xc0103000 0x00000008>, 1207ef62cebSEmmanuel Vadot <0xc0104000 0x00000020>, 1217ef62cebSEmmanuel Vadot <0xc0105000 0x00000020>, 1227ef62cebSEmmanuel Vadot <0xc0106000 0x00000100>; 1237ef62cebSEmmanuel Vadot reg-names = "control_port", "rx_csr", "rx_desc", "rx_resp", "tx_csr", "tx_desc", "pcs"; 1247ef62cebSEmmanuel Vadot interrupt-parent = <&intc>; 1257ef62cebSEmmanuel Vadot interrupts = <0 44 4>,<0 45 4>; 1267ef62cebSEmmanuel Vadot interrupt-names = "rx_irq","tx_irq"; 1277ef62cebSEmmanuel Vadot rx-fifo-depth = <2048>; 1287ef62cebSEmmanuel Vadot tx-fifo-depth = <2048>; 1297ef62cebSEmmanuel Vadot max-frame-size = <1500>; 1307ef62cebSEmmanuel Vadot local-mac-address = [ 00 00 00 00 00 00 ]; 1317ef62cebSEmmanuel Vadot altr,has-supplementary-unicast; 1327ef62cebSEmmanuel Vadot altr,has-hash-multicast-filter; 1337ef62cebSEmmanuel Vadot sfp = <&sfp0>; 1347ef62cebSEmmanuel Vadot phy-mode = "sgmii"; 1357ef62cebSEmmanuel Vadot managed = "in-band-status"; 1367ef62cebSEmmanuel Vadot }; 1377ef62cebSEmmanuel Vadot - | 1387ef62cebSEmmanuel Vadot tse_sub_1_eth_tse_0: ethernet@1,00001000 { 1397ef62cebSEmmanuel Vadot compatible = "altr,tse-msgdma-1.0"; 1407ef62cebSEmmanuel Vadot reg = <0x00001000 0x00000400>, 1417ef62cebSEmmanuel Vadot <0x00001460 0x00000020>, 1427ef62cebSEmmanuel Vadot <0x00001480 0x00000020>, 1437ef62cebSEmmanuel Vadot <0x000014A0 0x00000008>, 1447ef62cebSEmmanuel Vadot <0x00001400 0x00000020>, 1457ef62cebSEmmanuel Vadot <0x00001420 0x00000020>; 1467ef62cebSEmmanuel Vadot reg-names = "control_port", "rx_csr", "rx_desc", "rx_resp", "tx_csr", "tx_desc"; 1477ef62cebSEmmanuel Vadot interrupt-parent = <&hps_0_arm_gic_0>; 1487ef62cebSEmmanuel Vadot interrupts = <0 43 4>, <0 42 4>; 1497ef62cebSEmmanuel Vadot interrupt-names = "rx_irq", "tx_irq"; 1507ef62cebSEmmanuel Vadot rx-fifo-depth = <2048>; 1517ef62cebSEmmanuel Vadot tx-fifo-depth = <2048>; 1527ef62cebSEmmanuel Vadot max-frame-size = <1500>; 1537ef62cebSEmmanuel Vadot local-mac-address = [ 00 00 00 00 00 00 ]; 1547ef62cebSEmmanuel Vadot phy-mode = "gmii"; 1557ef62cebSEmmanuel Vadot altr,has-supplementary-unicast; 1567ef62cebSEmmanuel Vadot altr,has-hash-multicast-filter; 1577ef62cebSEmmanuel Vadot phy-handle = <&phy1>; 1587ef62cebSEmmanuel Vadot mdio { 1597ef62cebSEmmanuel Vadot compatible = "altr,tse-mdio"; 1607ef62cebSEmmanuel Vadot #address-cells = <1>; 1617ef62cebSEmmanuel Vadot #size-cells = <0>; 1627ef62cebSEmmanuel Vadot phy1: ethernet-phy@1 { 1637ef62cebSEmmanuel Vadot reg = <0x1>; 1647ef62cebSEmmanuel Vadot }; 1657ef62cebSEmmanuel Vadot }; 1667ef62cebSEmmanuel Vadot }; 1677ef62cebSEmmanuel Vadot 1687ef62cebSEmmanuel Vadot... 169