[v4,03/42] dt-bindings: clock: Add Cirrus EP93xx
Commit Message
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add device tree bindings for the Cirrus Logic EP93xx clock block
used in these SoCs.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../bindings/clock/cirrus,ep9301-clk.yaml | 46 ++++++++++++++++++++++
include/dt-bindings/clock/cirrus,ep9301-clk.h | 41 +++++++++++++++++++
2 files changed, 87 insertions(+)
Comments
On 15/09/2023 10:10, Nikita Shubin via B4 Relay wrote:
> From: Nikita Shubin <nikita.shubin@maquefel.me>
>
Thank you for your patch. There is something to discuss/improve.
> diff --git a/include/dt-bindings/clock/cirrus,ep9301-clk.h b/include/dt-bindings/clock/cirrus,ep9301-clk.h
> new file mode 100644
> index 000000000000..3cd053c0fdea
> --- /dev/null
> +++ b/include/dt-bindings/clock/cirrus,ep9301-clk.h
> @@ -0,0 +1,41 @@
> +/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
> +#ifndef DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> +#define DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> +
> +#define EP93XX_CLK_UART1 0
> +#define EP93XX_CLK_UART2 1
> +#define EP93XX_CLK_UART3 2
> +
> +#define EP93XX_CLK_ADC 3
> +#define EP93XX_CLK_ADC_EN 4
> +
> +#define EP93XX_CLK_KEYPAD 5
Wrong indentation - use tab instead of spaces, just like in other places.
> +
> +#define EP93XX_CLK_VIDEO 6
> +
> +#define EP93XX_CLK_I2S_MCLK 7
> +#define EP93XX_CLK_I2S_SCLK 8
> +#define EP93XX_CLK_I2S_LRCLK 9
> +
> +#define EP93XX_CLK_UART 10
> +#define EP93XX_CLK_SPI 11
> +#define EP93XX_CLK_PWM 12
> +#define EP93XX_CLK_USB 13
> +
> +#define EP93XX_CLK_M2M0 14
> +#define EP93XX_CLK_M2M1 15
> +
> +#define EP93XX_CLK_M2P0 16
> +#define EP93XX_CLK_M2P1 17
> +#define EP93XX_CLK_M2P2 18
> +#define EP93XX_CLK_M2P3 19
> +#define EP93XX_CLK_M2P4 20
> +#define EP93XX_CLK_M2P5 21
> +#define EP93XX_CLK_M2P6 22
> +#define EP93XX_CLK_M2P7 23
> +#define EP93XX_CLK_M2P8 24
> +#define EP93XX_CLK_M2P9 25
> +
> +#define EP93XX_CLK_END 26
Here as well... except I propose to drop it. Number of clocks should not
be part of bindings, because then you cannot grow it.
With indentation fixed and CLK_END dropped:
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
new file mode 100644
@@ -0,0 +1,46 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/clock/cirrus,ep9301-clk.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>
+
+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:
+ items:
+ - description: reference clock
+
+required:
+ - compatible
+ - "#clock-cells"
+ - clocks
+
+additionalProperties: false
+
+examples:
+ - |
+ clock-controller {
+ compatible = "cirrus,ep9301-clk";
+ #clock-cells = <1>;
+ clocks = <&xtali>;
+ };
+...
new file mode 100644
@@ -0,0 +1,41 @@
+/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
+#ifndef DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
+#define DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
+
+#define EP93XX_CLK_UART1 0
+#define EP93XX_CLK_UART2 1
+#define EP93XX_CLK_UART3 2
+
+#define EP93XX_CLK_ADC 3
+#define EP93XX_CLK_ADC_EN 4
+
+#define EP93XX_CLK_KEYPAD 5
+
+#define EP93XX_CLK_VIDEO 6
+
+#define EP93XX_CLK_I2S_MCLK 7
+#define EP93XX_CLK_I2S_SCLK 8
+#define EP93XX_CLK_I2S_LRCLK 9
+
+#define EP93XX_CLK_UART 10
+#define EP93XX_CLK_SPI 11
+#define EP93XX_CLK_PWM 12
+#define EP93XX_CLK_USB 13
+
+#define EP93XX_CLK_M2M0 14
+#define EP93XX_CLK_M2M1 15
+
+#define EP93XX_CLK_M2P0 16
+#define EP93XX_CLK_M2P1 17
+#define EP93XX_CLK_M2P2 18
+#define EP93XX_CLK_M2P3 19
+#define EP93XX_CLK_M2P4 20
+#define EP93XX_CLK_M2P5 21
+#define EP93XX_CLK_M2P6 22
+#define EP93XX_CLK_M2P7 23
+#define EP93XX_CLK_M2P8 24
+#define EP93XX_CLK_M2P9 25
+
+#define EP93XX_CLK_END 26
+
+#endif /* DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H */