1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/net/dsa/hir 4 $id: http://devicetree.org/schemas/net/dsa/hirschmann,hellcreek.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Hirschmann Hellcreek TSN Switch 7 title: Hirschmann Hellcreek TSN Switch 8 8 9 allOf: 9 allOf: 10 - $ref: dsa.yaml#/$defs/ethernet-ports 10 - $ref: dsa.yaml#/$defs/ethernet-ports 11 11 12 maintainers: 12 maintainers: 13 - Andrew Lunn <andrew@lunn.ch> 13 - Andrew Lunn <andrew@lunn.ch> 14 - Florian Fainelli <f.fainelli@gmail.com> 14 - Florian Fainelli <f.fainelli@gmail.com> 15 - Vladimir Oltean <olteanv@gmail.com> 15 - Vladimir Oltean <olteanv@gmail.com> 16 - Kurt Kanzenbach <kurt@linutronix.de> 16 - Kurt Kanzenbach <kurt@linutronix.de> 17 17 18 description: 18 description: 19 The Hellcreek TSN Switch IP is a 802.1Q Ethe 19 The Hellcreek TSN Switch IP is a 802.1Q Ethernet compliant switch. It supports 20 the Precision Time Protocol, Hardware Timest 20 the Precision Time Protocol, Hardware Timestamping as well the Time Aware 21 Shaper. 21 Shaper. 22 22 23 properties: 23 properties: 24 compatible: 24 compatible: 25 items: 25 items: 26 - const: hirschmann,hellcreek-de1soc-r1 26 - const: hirschmann,hellcreek-de1soc-r1 27 27 28 reg: 28 reg: 29 description: 29 description: 30 The physical base address and size of TS 30 The physical base address and size of TSN and PTP memory base 31 minItems: 2 31 minItems: 2 32 maxItems: 2 32 maxItems: 2 33 33 34 reg-names: 34 reg-names: 35 items: 35 items: 36 - const: tsn 36 - const: tsn 37 - const: ptp 37 - const: ptp 38 38 39 leds: 39 leds: 40 type: object 40 type: object 41 properties: 41 properties: 42 '#address-cells': 42 '#address-cells': 43 const: 1 43 const: 1 44 '#size-cells': 44 '#size-cells': 45 const: 0 45 const: 0 46 46 47 patternProperties: 47 patternProperties: 48 "^led@[01]$": 48 "^led@[01]$": 49 type: object 49 type: object 50 description: Hellcreek leds 50 description: Hellcreek leds 51 $ref: /schemas/leds/common.yaml# 51 $ref: /schemas/leds/common.yaml# 52 52 53 properties: 53 properties: 54 reg: 54 reg: 55 items: 55 items: 56 - enum: [0, 1] 56 - enum: [0, 1] 57 description: Led number 57 description: Led number 58 58 59 label: true 59 label: true 60 60 61 default-state: true 61 default-state: true 62 62 63 required: 63 required: 64 - reg 64 - reg 65 65 66 additionalProperties: false 66 additionalProperties: false 67 67 68 additionalProperties: false 68 additionalProperties: false 69 69 70 required: 70 required: 71 - compatible 71 - compatible 72 - reg 72 - reg 73 - reg-names 73 - reg-names 74 - ethernet-ports 74 - ethernet-ports 75 - leds 75 - leds 76 76 77 unevaluatedProperties: false 77 unevaluatedProperties: false 78 78 79 examples: 79 examples: 80 - | 80 - | 81 switch0: switch@ff240000 { 81 switch0: switch@ff240000 { 82 compatible = "hirschmann,hellcreek 82 compatible = "hirschmann,hellcreek-de1soc-r1"; 83 reg = <0xff240000 0x1000>, 83 reg = <0xff240000 0x1000>, 84 <0xff250000 0x1000>; 84 <0xff250000 0x1000>; 85 reg-names = "tsn", "ptp"; 85 reg-names = "tsn", "ptp"; 86 dsa,member = <0 0>; 86 dsa,member = <0 0>; 87 87 88 ethernet-ports { 88 ethernet-ports { 89 #address-cells = <1>; 89 #address-cells = <1>; 90 #size-cells = <0>; 90 #size-cells = <0>; 91 91 92 port@0 { 92 port@0 { 93 reg = <0>; 93 reg = <0>; 94 ethernet = <&gmac0>; 94 ethernet = <&gmac0>; 95 phy-mode = "mii"; 95 phy-mode = "mii"; 96 96 97 fixed-link { 97 fixed-link { 98 speed = <100>; 98 speed = <100>; 99 full-duplex; 99 full-duplex; 100 }; 100 }; 101 }; 101 }; 102 102 103 port@2 { 103 port@2 { 104 reg = <2>; 104 reg = <2>; 105 label = "lan0"; 105 label = "lan0"; 106 phy-handle = <&phy1>; 106 phy-handle = <&phy1>; 107 }; 107 }; 108 108 109 port@3 { 109 port@3 { 110 reg = <3>; 110 reg = <3>; 111 label = "lan1"; 111 label = "lan1"; 112 phy-handle = <&phy2>; 112 phy-handle = <&phy2>; 113 }; 113 }; 114 }; 114 }; 115 115 116 leds { 116 leds { 117 #address-cells = <1>; 117 #address-cells = <1>; 118 #size-cells = <0>; 118 #size-cells = <0>; 119 119 120 led@0 { 120 led@0 { 121 reg = <0>; 121 reg = <0>; 122 label = "sync_good"; 122 label = "sync_good"; 123 default-state = "on"; 123 default-state = "on"; 124 }; 124 }; 125 125 126 led@1 { 126 led@1 { 127 reg = <1>; 127 reg = <1>; 128 label = "is_gm"; 128 label = "is_gm"; 129 default-state = "off"; 129 default-state = "off"; 130 }; 130 }; 131 }; 131 }; 132 }; 132 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.