On 17/08/2021 22:21, Rob Herring wrote: > On Tue, Aug 10, 2021 at 11:31:40AM +0200, Krzysztof Kozlowski wrote: >> Merge Exynos542x clock controller bindings to existing DT schema. >> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx> >> --- >> .../bindings/clock/exynos5420-clock.txt | 42 ------------------- >> .../bindings/clock/samsung,exynos-clock.yaml | 11 ++++- >> 2 files changed, 10 insertions(+), 43 deletions(-) >> delete mode 100644 Documentation/devicetree/bindings/clock/exynos5420-clock.txt >> >> diff --git a/Documentation/devicetree/bindings/clock/exynos5420-clock.txt b/Documentation/devicetree/bindings/clock/exynos5420-clock.txt >> deleted file mode 100644 >> index 717a7b1531c7..000000000000 >> --- a/Documentation/devicetree/bindings/clock/exynos5420-clock.txt >> +++ /dev/null >> @@ -1,42 +0,0 @@ >> -* Samsung Exynos5420 Clock Controller >> - >> -The Exynos5420 clock controller generates and supplies clock to various >> -controllers within the Exynos5420 SoC and for the Exynos5800 SoC. >> - >> -Required Properties: >> - >> -- compatible: should be one of the following. >> - - "samsung,exynos5420-clock" - controller compatible with Exynos5420 SoC. >> - - "samsung,exynos5800-clock" - controller compatible with Exynos5800 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/exynos5420.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,exynos5420-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 >> index cd6567bd8cc7..b0f58a1cf6cb 100644 >> --- a/Documentation/devicetree/bindings/clock/samsung,exynos-clock.yaml >> +++ b/Documentation/devicetree/bindings/clock/samsung,exynos-clock.yaml >> @@ -18,7 +18,16 @@ description: | >> >> properties: >> compatible: >> - const: samsung,exynos5250-clock >> + oneOf: >> + - enum: >> + - samsung,exynos5250-clock >> + - samsung,exynos5420-clock >> + - samsung,exynos5800-clock >> + - items: >> + - enum: >> + - samsung,exynos5420-clock >> + - samsung,exynos5800-clock > > Is there a reason these are supported with or without 'syscon'? > Yes, the syscon is optional and needed only by the Exynos5422 DMC driver (exynos5422-dmc.txt/samsung,exynos5422-dmc.yaml with samsung,exynos5422-dmc compatible). Without that driver, there is no need for syscon. Best regards, Krzysztof