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/ti,sci-clk.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: TI-SCI clock controller
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Nishanth Menon <nm@ti.com>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_cidescription: |
1362306a36Sopenharmony_ci  Some TI SoCs contain a system controller (like the Power Management Micro
1462306a36Sopenharmony_ci  Controller (PMMC) on Keystone 66AK2G SoC) that are responsible for controlling
1562306a36Sopenharmony_ci  the state of the various hardware modules present on the SoC. Communication
1662306a36Sopenharmony_ci  between the host processor running an OS and the system controller happens
1762306a36Sopenharmony_ci  through a protocol called TI System Control Interface (TI-SCI protocol).
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci  This clock controller node uses the TI SCI protocol to perform various clock
2062306a36Sopenharmony_ci  management of various hardware modules (devices) present on the SoC. This
2162306a36Sopenharmony_ci  node must be a child node of the associated TI-SCI system controller node.
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciproperties:
2462306a36Sopenharmony_ci  $nodename:
2562306a36Sopenharmony_ci    pattern: "^clock-controller$"
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci  compatible:
2862306a36Sopenharmony_ci    const: ti,k2g-sci-clk
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci  "#clock-cells":
3162306a36Sopenharmony_ci    const: 2
3262306a36Sopenharmony_ci    description:
3362306a36Sopenharmony_ci      The two cells represent values that the TI-SCI controller defines.
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci      The first cell should contain the device ID.
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci      The second cell should contain the clock ID.
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci      Please see  http://processors.wiki.ti.com/index.php/TISCI for
4062306a36Sopenharmony_ci      protocol documentation for the values to be used for different devices.
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ciadditionalProperties: false
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ciexamples:
4562306a36Sopenharmony_ci  - |
4662306a36Sopenharmony_ci    k3_clks: clock-controller {
4762306a36Sopenharmony_ci        compatible = "ti,k2g-sci-clk";
4862306a36Sopenharmony_ci        #clock-cells = <2>;
4962306a36Sopenharmony_ci    };
50