162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-usb-clk.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Allwinner A10 USB Clock
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Chen-Yu Tsai <wens@csie.org>
1162306a36Sopenharmony_ci  - Maxime Ripard <mripard@kernel.org>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_cideprecated: true
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciproperties:
1662306a36Sopenharmony_ci  "#clock-cells":
1762306a36Sopenharmony_ci    const: 1
1862306a36Sopenharmony_ci    description: >
1962306a36Sopenharmony_ci      The additional ID argument passed to the clock shall refer to
2062306a36Sopenharmony_ci      the index of the output.
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci  "#reset-cells":
2362306a36Sopenharmony_ci    const: 1
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci  compatible:
2662306a36Sopenharmony_ci    enum:
2762306a36Sopenharmony_ci      - allwinner,sun4i-a10-usb-clk
2862306a36Sopenharmony_ci      - allwinner,sun5i-a13-usb-clk
2962306a36Sopenharmony_ci      - allwinner,sun6i-a31-usb-clk
3062306a36Sopenharmony_ci      - allwinner,sun8i-a23-usb-clk
3162306a36Sopenharmony_ci      - allwinner,sun8i-h3-usb-clk
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci  reg:
3462306a36Sopenharmony_ci    maxItems: 1
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci  clocks:
3762306a36Sopenharmony_ci    maxItems: 1
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci  clock-output-names:
4062306a36Sopenharmony_ci    minItems: 2
4162306a36Sopenharmony_ci    maxItems: 8
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_cirequired:
4462306a36Sopenharmony_ci  - "#clock-cells"
4562306a36Sopenharmony_ci  - "#reset-cells"
4662306a36Sopenharmony_ci  - compatible
4762306a36Sopenharmony_ci  - reg
4862306a36Sopenharmony_ci  - clocks
4962306a36Sopenharmony_ci  - clock-output-names
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ciadditionalProperties: false
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ciallOf:
5462306a36Sopenharmony_ci  - if:
5562306a36Sopenharmony_ci      properties:
5662306a36Sopenharmony_ci        compatible:
5762306a36Sopenharmony_ci          contains:
5862306a36Sopenharmony_ci            const: allwinner,sun4i-a10-usb-clk
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ci    then:
6162306a36Sopenharmony_ci      properties:
6262306a36Sopenharmony_ci        clock-output-names:
6362306a36Sopenharmony_ci          maxItems: 3
6462306a36Sopenharmony_ci
6562306a36Sopenharmony_ci  - if:
6662306a36Sopenharmony_ci      properties:
6762306a36Sopenharmony_ci        compatible:
6862306a36Sopenharmony_ci          contains:
6962306a36Sopenharmony_ci            const: allwinner,sun5i-a13-usb-clk
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci    then:
7262306a36Sopenharmony_ci      properties:
7362306a36Sopenharmony_ci        clock-output-names:
7462306a36Sopenharmony_ci          maxItems: 2
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci  - if:
7762306a36Sopenharmony_ci      properties:
7862306a36Sopenharmony_ci        compatible:
7962306a36Sopenharmony_ci          contains:
8062306a36Sopenharmony_ci            const: allwinner,sun6i-a31-usb-clk
8162306a36Sopenharmony_ci
8262306a36Sopenharmony_ci    then:
8362306a36Sopenharmony_ci      properties:
8462306a36Sopenharmony_ci        clock-output-names:
8562306a36Sopenharmony_ci          maxItems: 6
8662306a36Sopenharmony_ci
8762306a36Sopenharmony_ci  - if:
8862306a36Sopenharmony_ci      properties:
8962306a36Sopenharmony_ci        compatible:
9062306a36Sopenharmony_ci          contains:
9162306a36Sopenharmony_ci            const: allwinner,sun8i-a23-usb-clk
9262306a36Sopenharmony_ci
9362306a36Sopenharmony_ci    then:
9462306a36Sopenharmony_ci      properties:
9562306a36Sopenharmony_ci        clock-output-names:
9662306a36Sopenharmony_ci          maxItems: 5
9762306a36Sopenharmony_ci
9862306a36Sopenharmony_ci  - if:
9962306a36Sopenharmony_ci      properties:
10062306a36Sopenharmony_ci        compatible:
10162306a36Sopenharmony_ci          contains:
10262306a36Sopenharmony_ci            const: allwinner,sun8i-h3-usb-clk
10362306a36Sopenharmony_ci
10462306a36Sopenharmony_ci    then:
10562306a36Sopenharmony_ci      properties:
10662306a36Sopenharmony_ci        clock-output-names:
10762306a36Sopenharmony_ci          maxItems: 8
10862306a36Sopenharmony_ci
10962306a36Sopenharmony_ciexamples:
11062306a36Sopenharmony_ci  - |
11162306a36Sopenharmony_ci    clk@1c200cc {
11262306a36Sopenharmony_ci        #clock-cells = <1>;
11362306a36Sopenharmony_ci        #reset-cells = <1>;
11462306a36Sopenharmony_ci        compatible = "allwinner,sun4i-a10-usb-clk";
11562306a36Sopenharmony_ci        reg = <0x01c200cc 0x4>;
11662306a36Sopenharmony_ci        clocks = <&pll6 1>;
11762306a36Sopenharmony_ci        clock-output-names = "usb_ohci0", "usb_ohci1", "usb_phy";
11862306a36Sopenharmony_ci    };
11962306a36Sopenharmony_ci
12062306a36Sopenharmony_ci  - |
12162306a36Sopenharmony_ci    clk@1c200cc {
12262306a36Sopenharmony_ci        #clock-cells = <1>;
12362306a36Sopenharmony_ci        #reset-cells = <1>;
12462306a36Sopenharmony_ci        compatible = "allwinner,sun5i-a13-usb-clk";
12562306a36Sopenharmony_ci        reg = <0x01c200cc 0x4>;
12662306a36Sopenharmony_ci        clocks = <&pll6 1>;
12762306a36Sopenharmony_ci        clock-output-names = "usb_ohci0", "usb_phy";
12862306a36Sopenharmony_ci    };
12962306a36Sopenharmony_ci
13062306a36Sopenharmony_ci  - |
13162306a36Sopenharmony_ci    clk@1c200cc {
13262306a36Sopenharmony_ci        #clock-cells = <1>;
13362306a36Sopenharmony_ci        #reset-cells = <1>;
13462306a36Sopenharmony_ci        compatible = "allwinner,sun6i-a31-usb-clk";
13562306a36Sopenharmony_ci        reg = <0x01c200cc 0x4>;
13662306a36Sopenharmony_ci        clocks = <&osc24M>;
13762306a36Sopenharmony_ci        clock-output-names = "usb_phy0", "usb_phy1", "usb_phy2",
13862306a36Sopenharmony_ci                             "usb_ohci0", "usb_ohci1",
13962306a36Sopenharmony_ci                             "usb_ohci2";
14062306a36Sopenharmony_ci    };
14162306a36Sopenharmony_ci
14262306a36Sopenharmony_ci  - |
14362306a36Sopenharmony_ci    clk@1c200cc {
14462306a36Sopenharmony_ci        #clock-cells = <1>;
14562306a36Sopenharmony_ci        #reset-cells = <1>;
14662306a36Sopenharmony_ci        compatible = "allwinner,sun8i-a23-usb-clk";
14762306a36Sopenharmony_ci        reg = <0x01c200cc 0x4>;
14862306a36Sopenharmony_ci        clocks = <&osc24M>;
14962306a36Sopenharmony_ci        clock-output-names = "usb_phy0", "usb_phy1", "usb_hsic",
15062306a36Sopenharmony_ci                             "usb_hsic_12M", "usb_ohci0";
15162306a36Sopenharmony_ci    };
15262306a36Sopenharmony_ci
15362306a36Sopenharmony_ci  - |
15462306a36Sopenharmony_ci    clk@1c200cc {
15562306a36Sopenharmony_ci        #clock-cells = <1>;
15662306a36Sopenharmony_ci        #reset-cells = <1>;
15762306a36Sopenharmony_ci        compatible = "allwinner,sun8i-h3-usb-clk";
15862306a36Sopenharmony_ci        reg = <0x01c200cc 0x4>;
15962306a36Sopenharmony_ci        clocks = <&osc24M>;
16062306a36Sopenharmony_ci        clock-output-names = "usb_phy0", "usb_phy1",
16162306a36Sopenharmony_ci                             "usb_phy2", "usb_phy3",
16262306a36Sopenharmony_ci                             "usb_ohci0", "usb_ohci1",
16362306a36Sopenharmony_ci                             "usb_ohci2", "usb_ohci3";
16462306a36Sopenharmony_ci    };
16562306a36Sopenharmony_ci
16662306a36Sopenharmony_ci...
167