On 10/08/2021 19:51, Sam Protsenko wrote: > On Tue, 10 Aug 2021 at 12:32, Krzysztof Kozlowski > <krzysztof.kozlowski@xxxxxxxxxxxxx> wrote: >> >> Convert Samsung Exynos5250 clock controller bindings to DT schema format >> using json-schema. >> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx> >> --- >> .../bindings/clock/exynos5250-clock.txt | 41 ---------------- >> .../bindings/clock/samsung,exynos-clock.yaml | 48 +++++++++++++++++++ >> MAINTAINERS | 1 + >> 3 files changed, 49 insertions(+), 41 deletions(-) >> delete mode 100644 Documentation/devicetree/bindings/clock/exynos5250-clock.txt >> create mode 100644 Documentation/devicetree/bindings/clock/samsung,exynos-clock.yaml >> >> diff --git a/Documentation/devicetree/bindings/clock/exynos5250-clock.txt b/Documentation/devicetree/bindings/clock/exynos5250-clock.txt >> deleted file mode 100644 >> index aff266a12eeb..000000000000 >> --- a/Documentation/devicetree/bindings/clock/exynos5250-clock.txt >> +++ /dev/null >> @@ -1,41 +0,0 @@ >> -* Samsung Exynos5250 Clock Controller >> - >> -The Exynos5250 clock controller generates and supplies clock to various >> -controllers within the Exynos5250 SoC. >> - >> -Required Properties: >> - >> -- compatible: should be one of the following. >> - - "samsung,exynos5250-clock" - controller compatible with Exynos5250 SoC. >> - >> -- reg: physical base address of the controller and length of memory mapped >> - region. >> - >> -- #clock-cells: should be 1. >> - >> -Each clock is assigned an identifier and client nodes can use this identifier >> -to specify the clock which they consume. >> - >> -All available clocks are defined as preprocessor macros in >> -dt-bindings/clock/exynos5250.h header and can be used in device >> -tree sources. >> - >> -Example 1: An example of a clock controller node is listed below. >> - >> - clock: clock-controller@10010000 { >> - compatible = "samsung,exynos5250-clock"; >> - reg = <0x10010000 0x30000>; >> - #clock-cells = <1>; >> - }; >> - >> -Example 2: UART controller node that consumes the clock generated by the clock >> - controller. Refer to the standard clock bindings for information >> - about 'clocks' and 'clock-names' property. >> - >> - serial@13820000 { >> - compatible = "samsung,exynos4210-uart"; >> - reg = <0x13820000 0x100>; >> - interrupts = <0 54 0>; >> - clocks = <&clock CLK_UART2>, <&clock CLK_SCLK_UART2>; >> - clock-names = "uart", "clk_uart_baud0"; >> - }; >> diff --git a/Documentation/devicetree/bindings/clock/samsung,exynos-clock.yaml b/Documentation/devicetree/bindings/clock/samsung,exynos-clock.yaml >> new file mode 100644 >> index 000000000000..cd6567bd8cc7 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/clock/samsung,exynos-clock.yaml >> @@ -0,0 +1,48 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/clock/samsung,exynos-clock.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Samsung Exynos SoC clock controller >> + >> +maintainers: >> + - Chanwoo Choi <cw00.choi@xxxxxxxxxxx> >> + - Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx> >> + - Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx> >> + - Tomasz Figa <tomasz.figa@xxxxxxxxx> >> + >> +description: | >> + All available clocks are defined as preprocessor macros in >> + dt-bindings/clock/ headers. >> + >> +properties: >> + compatible: >> + const: samsung,exynos5250-clock >> + >> + assigned-clocks: true >> + assigned-clock-parents: true >> + assigned-clock-rates: true >> + clocks: true >> + >> + "#clock-cells": >> + const: 1 >> + >> + reg: >> + maxItems: 1 >> + >> +required: >> + - compatible >> + - "#clock-cells" >> + - reg >> + >> +additionalProperties: false >> + >> +examples: >> + - | >> + #include <dt-bindings/clock/exynos5250.h> >> + clock: clock-controller@10010000 { >> + compatible = "samsung,exynos5250-clock"; >> + reg = <0x10010000 0x30000>; >> + #clock-cells = <1>; >> + }; >> diff --git a/MAINTAINERS b/MAINTAINERS >> index 36aee8517ab0..2dbacacac3f5 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -16491,6 +16491,7 @@ L: linux-samsung-soc@xxxxxxxxxxxxxxx >> S: Supported >> T: git git://git.kernel.org/pub/scm/linux/kernel/git/snawrocki/clk.git >> F: Documentation/devicetree/bindings/clock/exynos*.txt > > Are there any exynos*.txt bindings actually left after this series? If > no, maybe it's worth to remove this line while at it. Yes, there are. These are the bindings which expect specific external fixed clock and I don't know yet how to model it in dtschema. Best regards, Krzysztof