15def4c47SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 25def4c47SEmmanuel Vadot%YAML 1.2 35def4c47SEmmanuel Vadot--- 45def4c47SEmmanuel Vadot$id: http://devicetree.org/schemas/net/dsa/hirschmann,hellcreek.yaml# 55def4c47SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 65def4c47SEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: Hirschmann Hellcreek TSN Switch 85def4c47SEmmanuel Vadot 95def4c47SEmmanuel VadotallOf: 10*cb7aa33aSEmmanuel Vadot - $ref: dsa.yaml#/$defs/ethernet-ports 115def4c47SEmmanuel Vadot 125def4c47SEmmanuel Vadotmaintainers: 135def4c47SEmmanuel Vadot - Andrew Lunn <andrew@lunn.ch> 145def4c47SEmmanuel Vadot - Florian Fainelli <f.fainelli@gmail.com> 158bab661aSEmmanuel Vadot - Vladimir Oltean <olteanv@gmail.com> 165def4c47SEmmanuel Vadot - Kurt Kanzenbach <kurt@linutronix.de> 175def4c47SEmmanuel Vadot 185def4c47SEmmanuel Vadotdescription: 195def4c47SEmmanuel Vadot The Hellcreek TSN Switch IP is a 802.1Q Ethernet compliant switch. It supports 205def4c47SEmmanuel Vadot the Precision Time Protocol, Hardware Timestamping as well the Time Aware 215def4c47SEmmanuel Vadot Shaper. 225def4c47SEmmanuel Vadot 235def4c47SEmmanuel Vadotproperties: 245def4c47SEmmanuel Vadot compatible: 255def4c47SEmmanuel Vadot items: 265def4c47SEmmanuel Vadot - const: hirschmann,hellcreek-de1soc-r1 275def4c47SEmmanuel Vadot 285def4c47SEmmanuel Vadot reg: 295def4c47SEmmanuel Vadot description: 305def4c47SEmmanuel Vadot The physical base address and size of TSN and PTP memory base 315def4c47SEmmanuel Vadot minItems: 2 325def4c47SEmmanuel Vadot maxItems: 2 335def4c47SEmmanuel Vadot 345def4c47SEmmanuel Vadot reg-names: 355def4c47SEmmanuel Vadot items: 365def4c47SEmmanuel Vadot - const: tsn 375def4c47SEmmanuel Vadot - const: ptp 385def4c47SEmmanuel Vadot 395def4c47SEmmanuel Vadot leds: 405def4c47SEmmanuel Vadot type: object 415def4c47SEmmanuel Vadot properties: 425def4c47SEmmanuel Vadot '#address-cells': 435def4c47SEmmanuel Vadot const: 1 445def4c47SEmmanuel Vadot '#size-cells': 455def4c47SEmmanuel Vadot const: 0 465def4c47SEmmanuel Vadot 475def4c47SEmmanuel Vadot patternProperties: 485def4c47SEmmanuel Vadot "^led@[01]$": 495def4c47SEmmanuel Vadot type: object 505def4c47SEmmanuel Vadot description: Hellcreek leds 51b97ee269SEmmanuel Vadot $ref: /schemas/leds/common.yaml# 525def4c47SEmmanuel Vadot 535def4c47SEmmanuel Vadot properties: 545def4c47SEmmanuel Vadot reg: 555def4c47SEmmanuel Vadot items: 565def4c47SEmmanuel Vadot - enum: [0, 1] 575def4c47SEmmanuel Vadot description: Led number 585def4c47SEmmanuel Vadot 595def4c47SEmmanuel Vadot label: true 605def4c47SEmmanuel Vadot 615def4c47SEmmanuel Vadot default-state: true 625def4c47SEmmanuel Vadot 635def4c47SEmmanuel Vadot required: 645def4c47SEmmanuel Vadot - reg 655def4c47SEmmanuel Vadot 665def4c47SEmmanuel Vadot additionalProperties: false 675def4c47SEmmanuel Vadot 685def4c47SEmmanuel Vadot additionalProperties: false 695def4c47SEmmanuel Vadot 705def4c47SEmmanuel Vadotrequired: 715def4c47SEmmanuel Vadot - compatible 725def4c47SEmmanuel Vadot - reg 735def4c47SEmmanuel Vadot - reg-names 745def4c47SEmmanuel Vadot - ethernet-ports 755def4c47SEmmanuel Vadot - leds 765def4c47SEmmanuel Vadot 775def4c47SEmmanuel VadotunevaluatedProperties: false 785def4c47SEmmanuel Vadot 795def4c47SEmmanuel Vadotexamples: 805def4c47SEmmanuel Vadot - | 815def4c47SEmmanuel Vadot switch0: switch@ff240000 { 825def4c47SEmmanuel Vadot compatible = "hirschmann,hellcreek-de1soc-r1"; 835def4c47SEmmanuel Vadot reg = <0xff240000 0x1000>, 845def4c47SEmmanuel Vadot <0xff250000 0x1000>; 855def4c47SEmmanuel Vadot reg-names = "tsn", "ptp"; 865def4c47SEmmanuel Vadot dsa,member = <0 0>; 875def4c47SEmmanuel Vadot 885def4c47SEmmanuel Vadot ethernet-ports { 895def4c47SEmmanuel Vadot #address-cells = <1>; 905def4c47SEmmanuel Vadot #size-cells = <0>; 915def4c47SEmmanuel Vadot 925def4c47SEmmanuel Vadot port@0 { 935def4c47SEmmanuel Vadot reg = <0>; 945def4c47SEmmanuel Vadot ethernet = <&gmac0>; 957ef62cebSEmmanuel Vadot phy-mode = "mii"; 967ef62cebSEmmanuel Vadot 977ef62cebSEmmanuel Vadot fixed-link { 987ef62cebSEmmanuel Vadot speed = <100>; 997ef62cebSEmmanuel Vadot full-duplex; 1007ef62cebSEmmanuel Vadot }; 1015def4c47SEmmanuel Vadot }; 1025def4c47SEmmanuel Vadot 1035def4c47SEmmanuel Vadot port@2 { 1045def4c47SEmmanuel Vadot reg = <2>; 1055def4c47SEmmanuel Vadot label = "lan0"; 1065def4c47SEmmanuel Vadot phy-handle = <&phy1>; 1075def4c47SEmmanuel Vadot }; 1085def4c47SEmmanuel Vadot 1095def4c47SEmmanuel Vadot port@3 { 1105def4c47SEmmanuel Vadot reg = <3>; 1115def4c47SEmmanuel Vadot label = "lan1"; 1125def4c47SEmmanuel Vadot phy-handle = <&phy2>; 1135def4c47SEmmanuel Vadot }; 1145def4c47SEmmanuel Vadot }; 1155def4c47SEmmanuel Vadot 1165def4c47SEmmanuel Vadot leds { 1175def4c47SEmmanuel Vadot #address-cells = <1>; 1185def4c47SEmmanuel Vadot #size-cells = <0>; 1195def4c47SEmmanuel Vadot 1205def4c47SEmmanuel Vadot led@0 { 1215def4c47SEmmanuel Vadot reg = <0>; 1225def4c47SEmmanuel Vadot label = "sync_good"; 1235def4c47SEmmanuel Vadot default-state = "on"; 1245def4c47SEmmanuel Vadot }; 1255def4c47SEmmanuel Vadot 1265def4c47SEmmanuel Vadot led@1 { 1275def4c47SEmmanuel Vadot reg = <1>; 1285def4c47SEmmanuel Vadot label = "is_gm"; 1295def4c47SEmmanuel Vadot default-state = "off"; 1305def4c47SEmmanuel Vadot }; 1315def4c47SEmmanuel Vadot }; 1325def4c47SEmmanuel Vadot }; 133