[v1,04/43] dt-bindings: clock: Add Cirrus EP93xx
Commit Message
This adds device tree bindings for the Cirrus Logic EP93xx
clock block used in these SoCs.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
Notes:
v0 -> v1:
- it's now a clock controller
.../bindings/clock/cirrus,ep9301.yaml | 64 +++++++++++++++++++
1 file changed, 64 insertions(+)
create mode 100644 Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml
Comments
On 01/06/2023 07:33, Nikita Shubin wrote:
> This adds device tree bindings for the Cirrus Logic EP93xx
> clock block used in these SoCs.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
>
> Notes:
> v0 -> v1:
>
> - it's now a clock controller
>
> .../bindings/clock/cirrus,ep9301.yaml | 64 +++++++++++++++++++
> 1 file changed, 64 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml
>
> diff --git a/Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml b/Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml
> new file mode 100644
> index 000000000000..4f9e0d483698
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml
Filename matching compatible.
> @@ -0,0 +1,64 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/clock/cirrus,ep9301.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Cirrus Logic ep93xx SoC's clock controller
> +
> +maintainers:
> + - Nikita Shubin <nikita.shubin@maquefel.me>
> + - Alexander Sverdlin <alexander.sverdlin@gmail.com>
> +
> +description: |
> + Cirrus Logic EP93XX SoC clocks driver bindings. The clock
> + controller node must be defined as a child node of the ep93xx
> + system controller node.
> +
> + See also:
> + - dt-bindings/clock/cirrus,ep93xx-clock.h
> +
> +properties:
> + compatible:
> + oneOf:
> + - const: cirrus,ep9301-clk
> + - items:
> + - enum:
> + - cirrus,ep9302-clk
> + - cirrus,ep9307-clk
> + - cirrus,ep9312-clk
> + - cirrus,ep9315-clk
> + - const: cirrus,ep9301-clk
> +
> + "#clock-cells":
> + const: 1
> +
> + clocks:
> + description: List of clock specifiers which are external input
> + clocks to the given clock controller.
Drop description, it's obvious.
> + items:
> + - description: reference clock
> +
> +required:
> + - compatible
> + - "#clock-cells"
> + - clocks
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + clocks {
> + xtali: oscillator {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <14745600>;
> + };
> + };
Drop this part of example, it's obvious.
> +
> + clock-controller {
> + #clock-cells = <1>;
> + compatible = "cirrus,ep9301-clk";
compatible is always first property.
> + clocks = <&xtali>;
> + };
> +...
Best regards,
Krzysztof
On 01/06/2023 07:33, Nikita Shubin wrote:
> This adds device tree bindings for the Cirrus Logic EP93xx
> clock block used in these SoCs.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
>
> Notes:
> v0 -> v1:
>
> - it's now a clock controller
>
> .../bindings/clock/cirrus,ep9301.yaml | 64 +++++++++++++++++++
> 1 file changed, 64 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml
>
> diff --git a/Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml b/Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml
> new file mode 100644
> index 000000000000..4f9e0d483698
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/cirrus,ep9301.yaml
> @@ -0,0 +1,64 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/clock/cirrus,ep9301.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Cirrus Logic ep93xx SoC's clock controller
> +
> +maintainers:
> + - Nikita Shubin <nikita.shubin@maquefel.me>
> + - Alexander Sverdlin <alexander.sverdlin@gmail.com>
> +
> +description: |
> + Cirrus Logic EP93XX SoC clocks driver bindings. The clock
First sentence is not suitable for bindings. Describe the hardware or
skip it.
> + controller node must be defined as a child node of the ep93xx
> + system controller node.
> +
parent schema should define it...
Best regards,
Krzysztof
new file mode 100644
@@ -0,0 +1,64 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/clock/cirrus,ep9301.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic ep93xx SoC's clock controller
+
+maintainers:
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+
+description: |
+ Cirrus Logic EP93XX SoC clocks driver bindings. The clock
+ controller node must be defined as a child node of the ep93xx
+ system controller node.
+
+ See also:
+ - dt-bindings/clock/cirrus,ep93xx-clock.h
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9301-clk
+ - items:
+ - enum:
+ - cirrus,ep9302-clk
+ - cirrus,ep9307-clk
+ - cirrus,ep9312-clk
+ - cirrus,ep9315-clk
+ - const: cirrus,ep9301-clk
+
+ "#clock-cells":
+ const: 1
+
+ clocks:
+ description: List of clock specifiers which are external input
+ clocks to the given clock controller.
+ items:
+ - description: reference clock
+
+required:
+ - compatible
+ - "#clock-cells"
+ - clocks
+
+additionalProperties: false
+
+examples:
+ - |
+ clocks {
+ xtali: oscillator {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <14745600>;
+ };
+ };
+
+ clock-controller {
+ #clock-cells = <1>;
+ compatible = "cirrus,ep9301-clk";
+ clocks = <&xtali>;
+ };
+...