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