1
linux/Documentation/devicetree/bindings/clock/qcom,gcc-apq8084.yaml
Dmitry Baryshkov b0ef3434da dt-bindings: clock: qcom,gcc: sort out power-domains support
On some of Qualcomm platforms the Global Clock Controller (GCC) doesn't
provide power domains. Move requirement for the '#power-domain-cells'
out of the common qcom,gcc.yaml into individual schema files. For the
platforms that do not provide power-domains, explicitly forbid having
the '#power-domain-cells' property.

Suggested-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240529-qcom-gdscs-v2-2-69c63d0ae1e7@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-05-31 18:07:30 -05:00

88 lines
2.3 KiB
YAML

# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/qcom,gcc-apq8084.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm Global Clock & Reset Controller on APQ8084
maintainers:
- Stephen Boyd <sboyd@kernel.org>
- Taniya Das <quic_tdas@quicinc.com>
description: |
Qualcomm global clock control module provides the clocks, resets and power
domains on APQ8084.
See also::
include/dt-bindings/clock/qcom,gcc-apq8084.h
include/dt-bindings/reset/qcom,gcc-apq8084.h
allOf:
- $ref: qcom,gcc.yaml#
properties:
compatible:
const: qcom,gcc-apq8084
clocks:
items:
- description: XO source
- description: Sleep clock source
- description: UFS RX symbol 0 clock
- description: UFS RX symbol 1 clock
- description: UFS TX symbol 0 clock
- description: UFS TX symbol 1 clock
- description: SATA ASIC0 clock
- description: SATA RX clock
- description: PCIe PIPE clock
clock-names:
items:
- const: xo
- const: sleep_clk
- const: ufs_rx_symbol_0_clk_src
- const: ufs_rx_symbol_1_clk_src
- const: ufs_tx_symbol_0_clk_src
- const: ufs_tx_symbol_1_clk_src
- const: sata_asic0_clk
- const: sata_rx_clk
- const: pcie_pipe
required:
- compatible
- '#power-domain-cells'
unevaluatedProperties: false
examples:
- |
/* UFS PHY on APQ8084 is not supported (yet), so these bindings just serve an example */
clock-controller@fc400000 {
compatible = "qcom,gcc-apq8084";
reg = <0xfc400000 0x4000>;
#clock-cells = <1>;
#reset-cells = <1>;
#power-domain-cells = <1>;
clocks = <&xo_board>,
<&sleep_clk>,
<&ufsphy 0>,
<&ufsphy 1>,
<&ufsphy 2>,
<&ufsphy 3>,
<&sata 0>,
<&sata 1>,
<&pcie_phy>;
clock-names = "xo",
"sleep_clk",
"ufs_rx_symbol_0_clk_src",
"ufs_rx_symbol_1_clk_src",
"ufs_tx_symbol_0_clk_src",
"ufs_tx_symbol_1_clk_src",
"sata_asic0_clk",
"sata_rx_clk",
"pcie_pipe";
};
...