On Sat Jul 11 2020, Florian Fainelli wrote: > On 7/10/2020 4:36 AM, Kurt Kanzenbach wrote: >> Add basic documentation and example. >> >> Signed-off-by: Kurt Kanzenbach <[email protected]> >> --- >> .../bindings/net/dsa/hellcreek.yaml | 132 ++++++++++++++++++ >> 1 file changed, 132 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/net/dsa/hellcreek.yaml >> >> diff --git a/Documentation/devicetree/bindings/net/dsa/hellcreek.yaml >> b/Documentation/devicetree/bindings/net/dsa/hellcreek.yaml >> new file mode 100644 >> index 000000000000..bb8ccc1762c8 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/net/dsa/hellcreek.yaml >> @@ -0,0 +1,132 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/net/dsa/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 <[email protected]> >> + - Florian Fainelli <[email protected]> >> + - Vivien Didelot <[email protected]> > > Don't you want to add yourself here as well?
Sure.
>
>> +
>> +description:
>> + The Hellcreek TSN Switch IP is a 802.1Q Ethernet compliant switch. It
>> supports
>> + the Pricision Time Protocol, Hardware Timestamping as well the Time Aware
s/Pricision/Precision/g;
>> + Shaper.
>> +
>> +properties:
>> + compatible:
>> + oneOf:
>> + - const: hirschmann,hellcreek
>> +
>> + reg:
>> + description:
>> + The physical base address and size of TSN and PTP memory base
>
> You need to indicate how many of these cells are required.
Yes.
>
>> +
>> + reg-names:
>> + description:
>> + Names of the physical base addresses
>
> Likewise.
>
>> +
>> + '#address-cells':
>> + const: 1
>> +
>> + '#size-cells':
>> + const: 1
>
> Humm, not sure about those, you do not expose a memory mapped interface
> bus from this switch to another sub node.
True. That might be even different for other SoCs.
>
>> +
>> + leds:
>> + type: object
>> + properties:
>> + '#address-cells':
>> + const: 1
>> + '#size-cells':
>> + const: 0
>> +
>> + patternProperties:
>> + "^led@[0-9]+$":
>> + type: object
>> + description: Hellcreek leds
>> +
>> + properties:
>> + reg:
>> + items:
>> + - enum: [0, 1]
>> + description: Led number
>> +
>> + label:
>> + description: Label associated with this led
>> + $ref: /schemas/types.yaml#/definitions/string
>> +
>> + default-state:
>> + items:
>> + enum: ["on", "off", "keep"]
>> + description: Default state for the led
>> + $ref: /schemas/types.yaml#/definitions/string
>> +
>> + required:
>> + - reg
>
> Can you reference an existing LED binding by any chance?
Yes, we should reference leds/common.yaml somehow. Looking at
leds-gpio.yaml for example, it should be possible like this:
patternProperties:
"^led@[0-9]+$":
type: object
description: Hellcreek leds
$ref: ../../leds/common.yaml#
[...]
But, how to express that only label and default-state should be used?
Thanks,
Kurt
signature.asc
Description: PGP signature
