mirror of
https://github.com/torvalds/linux.git
synced 2026-04-20 15:53:59 -04:00
The CMN PLL controller provides clocks to networking hardware blocks and to GCC on Qualcomm IPQ9574 SoC. It receives input clock from the on-chip Wi-Fi, and produces output clocks at fixed rates. These output rates are predetermined, and are unrelated to the input clock rate. The primary purpose of CMN PLL is to supply clocks to the networking hardware such as PPE (packet process engine), PCS and the externally connected switch or PHY device. The CMN PLL block also outputs fixed rate clocks to GCC, such as 24 MHZ as XO clock and 32 KHZ as sleep clock supplied to GCC. Signed-off-by: Luo Jie <quic_luoj@quicinc.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20250103-qcom_ipq_cmnpll-v8-1-c89fb4d4849d@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
78 lines
2.2 KiB
YAML
78 lines
2.2 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/clock/qcom,ipq9574-cmn-pll.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm CMN PLL Clock Controller on IPQ SoC
|
|
|
|
maintainers:
|
|
- Bjorn Andersson <andersson@kernel.org>
|
|
- Luo Jie <quic_luoj@quicinc.com>
|
|
|
|
description:
|
|
The CMN (or common) PLL clock controller expects a reference
|
|
input clock. This reference clock is from the on-board Wi-Fi.
|
|
The CMN PLL supplies a number of fixed rate output clocks to
|
|
the devices providing networking functions and to GCC. These
|
|
networking hardware include PPE (packet process engine), PCS
|
|
and the externally connected switch or PHY devices. The CMN
|
|
PLL block also outputs fixed rate clocks to GCC. The PLL's
|
|
primary function is to enable fixed rate output clocks for
|
|
networking hardware functions used with the IPQ SoC.
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- qcom,ipq9574-cmn-pll
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
items:
|
|
- description: The reference clock. The supported clock rates include
|
|
25000000, 31250000, 40000000, 48000000, 50000000 and 96000000 HZ.
|
|
- description: The AHB clock
|
|
- description: The SYS clock
|
|
description:
|
|
The reference clock is the source clock of CMN PLL, which is from the
|
|
Wi-Fi. The AHB and SYS clocks must be enabled to access CMN PLL
|
|
clock registers.
|
|
|
|
clock-names:
|
|
items:
|
|
- const: ref
|
|
- const: ahb
|
|
- const: sys
|
|
|
|
"#clock-cells":
|
|
const: 1
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- clocks
|
|
- clock-names
|
|
- "#clock-cells"
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/clock/qcom,ipq-cmn-pll.h>
|
|
#include <dt-bindings/clock/qcom,ipq9574-gcc.h>
|
|
|
|
cmn_pll: clock-controller@9b000 {
|
|
compatible = "qcom,ipq9574-cmn-pll";
|
|
reg = <0x0009b000 0x800>;
|
|
clocks = <&cmn_pll_ref_clk>,
|
|
<&gcc GCC_CMN_12GPLL_AHB_CLK>,
|
|
<&gcc GCC_CMN_12GPLL_SYS_CLK>;
|
|
clock-names = "ref", "ahb", "sys";
|
|
#clock-cells = <1>;
|
|
assigned-clocks = <&cmn_pll CMN_PLL_CLK>;
|
|
assigned-clock-rates-u64 = /bits/ 64 <12000000000>;
|
|
};
|
|
...
|