162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/clock/renesas,cpg-div6-clock.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Renesas CPG DIV6 Clock
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Geert Uytterhoeven <geert+renesas@glider.be>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_cidescription:
1362306a36Sopenharmony_ci  The CPG DIV6 clocks are variable factor clocks provided by the Clock Pulse
1462306a36Sopenharmony_ci  Generator (CPG). Their clock input is divided by a configurable factor from 1
1562306a36Sopenharmony_ci  to 64.
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ciproperties:
1862306a36Sopenharmony_ci  compatible:
1962306a36Sopenharmony_ci    items:
2062306a36Sopenharmony_ci      - enum:
2162306a36Sopenharmony_ci          - renesas,r8a73a4-div6-clock # R-Mobile APE6
2262306a36Sopenharmony_ci          - renesas,r8a7740-div6-clock # R-Mobile A1
2362306a36Sopenharmony_ci          - renesas,sh73a0-div6-clock  # SH-Mobile AG5
2462306a36Sopenharmony_ci      - const: renesas,cpg-div6-clock
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci  reg:
2762306a36Sopenharmony_ci    maxItems: 1
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci  clocks:
3062306a36Sopenharmony_ci    oneOf:
3162306a36Sopenharmony_ci      - maxItems: 1
3262306a36Sopenharmony_ci      - maxItems: 4
3362306a36Sopenharmony_ci      - maxItems: 8
3462306a36Sopenharmony_ci    description:
3562306a36Sopenharmony_ci      For clocks with multiple parents, invalid settings must be specified as
3662306a36Sopenharmony_ci      "<0>".
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci  '#clock-cells':
3962306a36Sopenharmony_ci    const: 0
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci  clock-output-names: true
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_cirequired:
4462306a36Sopenharmony_ci  - compatible
4562306a36Sopenharmony_ci  - reg
4662306a36Sopenharmony_ci  - clocks
4762306a36Sopenharmony_ci  - '#clock-cells'
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ciadditionalProperties: false
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ciexamples:
5262306a36Sopenharmony_ci  - |
5362306a36Sopenharmony_ci    #include <dt-bindings/clock/r8a73a4-clock.h>
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci    cpg_clocks: cpg_clocks@e6150000 {
5662306a36Sopenharmony_ci            compatible = "renesas,r8a73a4-cpg-clocks";
5762306a36Sopenharmony_ci            reg = <0xe6150000 0x10000>;
5862306a36Sopenharmony_ci            clocks = <&extal1_clk>, <&extal2_clk>;
5962306a36Sopenharmony_ci            #clock-cells = <1>;
6062306a36Sopenharmony_ci            clock-output-names = "main", "pll0", "pll1", "pll2",
6162306a36Sopenharmony_ci                                  "pll2s", "pll2h", "z", "z2",
6262306a36Sopenharmony_ci                                  "i", "m3", "b", "m1", "m2",
6362306a36Sopenharmony_ci                                  "zx", "zs", "hp";
6462306a36Sopenharmony_ci    };
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ci    sdhi2_clk: sdhi2_clk@e615007c {
6762306a36Sopenharmony_ci            compatible = "renesas,r8a73a4-div6-clock", "renesas,cpg-div6-clock";
6862306a36Sopenharmony_ci            reg = <0xe615007c 4>;
6962306a36Sopenharmony_ci            clocks = <&pll1_div2_clk>, <&cpg_clocks R8A73A4_CLK_PLL2S>, <0>,
7062306a36Sopenharmony_ci                     <&extal2_clk>;
7162306a36Sopenharmony_ci            #clock-cells = <0>;
7262306a36Sopenharmony_ci    };
73