b0ef3434da
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>
123 lines
4.1 KiB
YAML
123 lines
4.1 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/clock/qcom,gcc-sc8280xp.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm Global Clock & Reset Controller on SC8280xp
|
|
|
|
maintainers:
|
|
- Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
|
|
description: |
|
|
Qualcomm global clock control module provides the clocks, resets and
|
|
power domains on SC8280xp.
|
|
|
|
See also:: include/dt-bindings/clock/qcom,gcc-sc8280xp.h
|
|
|
|
properties:
|
|
compatible:
|
|
const: qcom,gcc-sc8280xp
|
|
|
|
clocks:
|
|
items:
|
|
- description: XO reference clock
|
|
- description: Sleep clock
|
|
- description: UFS memory first RX symbol clock
|
|
- description: UFS memory second RX symbol clock
|
|
- description: UFS memory first TX symbol clock
|
|
- description: UFS card first RX symbol clock
|
|
- description: UFS card second RX symbol clock
|
|
- description: UFS card first TX symbol clock
|
|
- description: Primary USB SuperSpeed pipe clock
|
|
- description: USB4 PHY pipegmux clock source
|
|
- description: USB4 PHY DP gmux clock source
|
|
- description: USB4 PHY sys pipegmux clock source
|
|
- description: USB4 PHY PCIe pipe clock
|
|
- description: USB4 PHY router max pipe clock
|
|
- description: Primary USB4 RX0 clock
|
|
- description: Primary USB4 RX1 clock
|
|
- description: Secondary USB SuperSpeed pipe clock
|
|
- description: Second USB4 PHY pipegmux clock source
|
|
- description: Second USB4 PHY DP gmux clock source
|
|
- description: Second USB4 PHY sys pipegmux clock source
|
|
- description: Second USB4 PHY PCIe pipe clock
|
|
- description: Second USB4 PHY router max pipe clock
|
|
- description: Secondary USB4 RX0 clock
|
|
- description: Secondary USB4 RX1 clock
|
|
- description: Multiport USB first SuperSpeed pipe clock
|
|
- description: Multiport USB second SuperSpeed pipe clock
|
|
- description: PCIe 2a pipe clock
|
|
- description: PCIe 2b pipe clock
|
|
- description: PCIe 3a pipe clock
|
|
- description: PCIe 3b pipe clock
|
|
- description: PCIe 4 pipe clock
|
|
- description: First EMAC controller reference clock
|
|
- description: Second EMAC controller reference clock
|
|
|
|
power-domains:
|
|
items:
|
|
- description: CX domain
|
|
|
|
protected-clocks:
|
|
maxItems: 389
|
|
|
|
required:
|
|
- compatible
|
|
- clocks
|
|
- '#power-domain-cells'
|
|
|
|
allOf:
|
|
- $ref: qcom,gcc.yaml#
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/clock/qcom,rpmh.h>
|
|
#include <dt-bindings/power/qcom-rpmpd.h>
|
|
|
|
clock-controller@100000 {
|
|
compatible = "qcom,gcc-sc8280xp";
|
|
reg = <0x00100000 0x1f0000>;
|
|
clocks = <&rpmhcc RPMH_CXO_CLK>,
|
|
<&sleep_clk>,
|
|
<&ufs_phy_rx_symbol_0_clk>,
|
|
<&ufs_phy_rx_symbol_1_clk>,
|
|
<&ufs_phy_tx_symbol_0_clk>,
|
|
<&ufs_card_rx_symbol_0_clk>,
|
|
<&ufs_card_rx_symbol_1_clk>,
|
|
<&ufs_card_tx_symbol_0_clk>,
|
|
<&usb_0_ssphy>,
|
|
<&gcc_usb4_phy_pipegmux_clk_src>,
|
|
<&gcc_usb4_phy_dp_gmux_clk_src>,
|
|
<&gcc_usb4_phy_sys_pipegmux_clk_src>,
|
|
<&usb4_phy_gcc_usb4_pcie_pipe_clk>,
|
|
<&usb4_phy_gcc_usb4rtr_max_pipe_clk>,
|
|
<&qusb4phy_gcc_usb4_rx0_clk>,
|
|
<&qusb4phy_gcc_usb4_rx1_clk>,
|
|
<&usb_1_ssphy>,
|
|
<&gcc_usb4_1_phy_pipegmux_clk_src>,
|
|
<&gcc_usb4_1_phy_dp_gmux_clk_src>,
|
|
<&gcc_usb4_1_phy_sys_pipegmux_clk_src>,
|
|
<&usb4_1_phy_gcc_usb4_pcie_pipe_clk>,
|
|
<&usb4_1_phy_gcc_usb4rtr_max_pipe_clk>,
|
|
<&qusb4phy_1_gcc_usb4_rx0_clk>,
|
|
<&qusb4phy_1_gcc_usb4_rx1_clk>,
|
|
<&usb_2_ssphy>,
|
|
<&usb_3_ssphy>,
|
|
<&pcie2a_lane>,
|
|
<&pcie2b_lane>,
|
|
<&pcie3a_lane>,
|
|
<&pcie3b_lane>,
|
|
<&pcie4_lane>,
|
|
<&rxc0_ref_clk>,
|
|
<&rxc1_ref_clk>;
|
|
power-domains = <&rpmhpd SC8280XP_CX>;
|
|
|
|
#clock-cells = <1>;
|
|
#reset-cells = <1>;
|
|
#power-domain-cells = <1>;
|
|
};
|
|
...
|