Skip to content

Commit

Permalink
dt-bindings: net: dsa: Add documentation for Hellcreek switches
Browse files Browse the repository at this point in the history
Add basic documentation and example.

Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de>
Reviewed-by: Rob Herring <robh@kernel.org>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  • Loading branch information
Kurt Kanzenbach authored and Jakub Kicinski committed Nov 5, 2020
1 parent dcfb1a7 commit d5d29d5
Showing 1 changed file with 127 additions and 0 deletions.
127 changes: 127 additions & 0 deletions Documentation/devicetree/bindings/net/dsa/hirschmann,hellcreek.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/dsa/hirschmann,hellcreek.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Hirschmann Hellcreek TSN Switch Device Tree Bindings

allOf:
- $ref: dsa.yaml#

maintainers:
- Andrew Lunn <andrew@lunn.ch>
- Florian Fainelli <f.fainelli@gmail.com>
- Vivien Didelot <vivien.didelot@gmail.com>
- Kurt Kanzenbach <kurt@linutronix.de>

description:
The Hellcreek TSN Switch IP is a 802.1Q Ethernet compliant switch. It supports
the Precision Time Protocol, Hardware Timestamping as well the Time Aware
Shaper.

properties:
compatible:
items:
- const: hirschmann,hellcreek-de1soc-r1

reg:
description:
The physical base address and size of TSN and PTP memory base
minItems: 2
maxItems: 2

reg-names:
items:
- const: tsn
- const: ptp

leds:
type: object
properties:
'#address-cells':
const: 1
'#size-cells':
const: 0

patternProperties:
"^led@[01]$":
type: object
description: Hellcreek leds
$ref: ../../leds/common.yaml#

properties:
reg:
items:
- enum: [0, 1]
description: Led number

label: true

default-state: true

required:
- reg

additionalProperties: false

additionalProperties: false

required:
- compatible
- reg
- reg-names
- ethernet-ports
- leds

unevaluatedProperties: false

examples:
- |
switch0: switch@ff240000 {
compatible = "hirschmann,hellcreek-de1soc-r1";
reg = <0xff240000 0x1000>,
<0xff250000 0x1000>;
reg-names = "tsn", "ptp";
dsa,member = <0 0>;
ethernet-ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
label = "cpu";
ethernet = <&gmac0>;
};
port@2 {
reg = <2>;
label = "lan0";
phy-handle = <&phy1>;
};
port@3 {
reg = <3>;
label = "lan1";
phy-handle = <&phy2>;
};
};
leds {
#address-cells = <1>;
#size-cells = <0>;
led@0 {
reg = <0>;
label = "sync_good";
default-state = "on";
};
led@1 {
reg = <1>;
label = "is_gm";
default-state = "off";
};
};
};

0 comments on commit d5d29d5

Please sign in to comment.