Skip to content

Commit

Permalink
Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kerne…
Browse files Browse the repository at this point in the history
…l/git/clk/linux

Pull clk updates from Stephen Boyd:
 "A pretty quiet cycle this time around. We have a bunch of new Qualcomm
  clk drivers, per usual, and then a handful of drivers for other SoCs.
  Then the usual pile of cleanups is fairly small data fixes or
  converting DT bindings to YAML so they can be validated.

  No changes to the core framework besides an OF node refcount bump that
  never got decremented.

  New Drivers:

   - 5L35023 variant of Versa 3 clock generator

   - Various Qualcomm clk controllers: IPQ CMN PLL, SM6115 LPASS, SM750
     global, tcsr, rpmh, and display. X Plus GPU and global. QCS615 rpmh
     and MSM8937 and MSM8940 RPM.

   - Qualcomm Pongo and Taycan Alpha PLLs

   - Qualcomm IPQ5424 NoC-related interconnect clks

   - Renesas RZ/G3E (R9A09G047) SoC clk driver

   - SAMA7D65 SoC clk driver

   - Samsung Exynos990 SoC clk driver"

* tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (159 commits)
  clk: analogbits: Fix incorrect calculation of vco rate delta
  clk: bcm: rpi: Add disp clock
  clk: bcm: rpi: Create helper to retrieve private data
  clk: bcm: rpi: Enable minimize for all firmware clocks
  clk: bcm: rpi: Allow cpufreq driver to also adjust gpu clocks
  clk: bcm: rpi: Add ISP to exported clocks
  clk: stm32f4: support spread spectrum clock generation
  clk: stm32f4: use FIELD helpers to access the PLLCFGR fields
  dt-bindings: clock: st,stm32-rcc: support spread spectrum clocking
  dt-bindings: clock: convert stm32 rcc bindings to json-schema
  clk: Use str_enable_disable-like helpers
  clk: clk-loongson2: Fix the number count of clk provider
  clk: clk-loongson2: Switch to use devm_clk_hw_register_fixed_rate_parent_data()
  clk: starfive: Make _clk_get become a common helper function
  clk: en7523: Add clock for eMMC for EN7581
  dt-bindings: clock: add ID for eMMC for EN7581
  dt-bindings: clock: drop NUM_CLOCKS define for EN7581
  clk: en7523: Rework clock handling for different clock numbers
  clk: thead: Fix cpu2vp_clk for TH1520 AP_SUBSYS clocks
  clk: thead: Add CLK_IGNORE_UNUSED to fix TH1520 boot
  ...
  • Loading branch information
Linus Torvalds committed Jan 22, 2025
2 parents abdebb2 + 53c9c27 commit 641b0c6
Show file tree
Hide file tree
Showing 155 changed files with 16,172 additions and 923 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ properties:
- atmel,sama5d4-pmc
- microchip,sam9x60-pmc
- microchip,sam9x7-pmc
- microchip,sama7d65-pmc
- microchip,sama7g5-pmc
- const: syscon

Expand Down Expand Up @@ -90,6 +91,7 @@ allOf:
enum:
- microchip,sam9x60-pmc
- microchip,sam9x7-pmc
- microchip,sama7d65-pmc
- microchip,sama7g5-pmc
then:
properties:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ properties:
- items:
- enum:
- microchip,sam9x7-sckc
- microchip,sama7d65-sckc
- microchip,sama7g5-sckc
- const: microchip,sam9x60-sckc

Expand Down
77 changes: 77 additions & 0 deletions Documentation/devicetree/bindings/clock/qcom,ipq9574-cmn-pll.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# 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>;
};
...
4 changes: 4 additions & 0 deletions Documentation/devicetree/bindings/clock/qcom,mmcc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ allOf:
then:
properties:
clocks:
minItems: 8
items:
- description: Board PXO source
- description: PLL 3 clock
Expand All @@ -87,8 +88,10 @@ allOf:
- description: DSI phy instance 2 dsi clock
- description: DSI phy instance 2 byte clock
- description: HDMI phy PLL clock
- description: LVDS PLL clock

clock-names:
minItems: 8
items:
- const: pxo
- const: pll3
Expand All @@ -98,6 +101,7 @@ allOf:
- const: dsi2pll
- const: dsi2pllbyte
- const: hdmipll
- const: lvdspll

- if:
properties:
Expand Down
59 changes: 59 additions & 0 deletions Documentation/devicetree/bindings/clock/qcom,qcs615-gcc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/qcom,qcs615-gcc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Global Clock & Reset Controller on QCS615

maintainers:
- Taniya Das <quic_tdas@quicinc.com>

description: |
Qualcomm global clock control module provides the clocks, resets and power
domains on QCS615.
See also: include/dt-bindings/clock/qcom,qcs615-gcc.h
properties:
compatible:
const: qcom,qcs615-gcc

clocks:
items:
- description: Board XO source
- description: Board active XO source
- description: Sleep clock source

clock-names:
items:
- const: bi_tcxo
- const: bi_tcxo_ao
- const: sleep_clk

required:
- compatible
- clocks
- clock-names
- '#power-domain-cells'

allOf:
- $ref: qcom,gcc.yaml#

unevaluatedProperties: false

examples:
- |
#include <dt-bindings/clock/qcom,rpmh.h>
clock-controller@100000 {
compatible = "qcom,qcs615-gcc";
reg = <0x00100000 0x1f0000>;
clocks = <&rpmhcc RPMH_CXO_CLK>,
<&rpmhcc RPMH_CXO_CLK_A>,
<&sleep_clk>;
clock-names = "bi_tcxo", "bi_tcxo_ao", "sleep_clk";
#clock-cells = <1>;
#reset-cells = <1>;
#power-domain-cells = <1>;
};
...
4 changes: 4 additions & 0 deletions Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ properties:
- qcom,rpmcc-msm8916
- qcom,rpmcc-msm8917
- qcom,rpmcc-msm8936
- qcom,rpmcc-msm8937
- qcom,rpmcc-msm8940
- qcom,rpmcc-msm8953
- qcom,rpmcc-msm8974
- qcom,rpmcc-msm8976
Expand Down Expand Up @@ -110,6 +112,8 @@ allOf:
- qcom,rpmcc-msm8916
- qcom,rpmcc-msm8917
- qcom,rpmcc-msm8936
- qcom,rpmcc-msm8937
- qcom,rpmcc-msm8940
- qcom,rpmcc-msm8953
- qcom,rpmcc-msm8974
- qcom,rpmcc-msm8976
Expand Down
2 changes: 2 additions & 0 deletions Documentation/devicetree/bindings/clock/qcom,rpmhcc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ description: |
properties:
compatible:
enum:
- qcom,qcs615-rpmh-clk
- qcom,qdu1000-rpmh-clk
- qcom,sa8775p-rpmh-clk
- qcom,sar2130p-rpmh-clk
Expand All @@ -37,6 +38,7 @@ properties:
- qcom,sm8450-rpmh-clk
- qcom,sm8550-rpmh-clk
- qcom,sm8650-rpmh-clk
- qcom,sm8750-rpmh-clk
- qcom,x1e80100-rpmh-clk

clocks:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,25 +18,31 @@ description: |
include/dt-bindings/clock/qcom,lpassaudiocc-sc7280.h
properties:
clocks: true

clock-names: true

reg: true

compatible:
enum:
- qcom,sc7280-lpassaoncc
- qcom,sc7280-lpassaudiocc
- qcom,sc7280-lpasscorecc
- qcom,sc7280-lpasshm

power-domains:
maxItems: 1
reg:
minItems: 1
maxItems: 2

clocks:
minItems: 1
maxItems: 3

clock-names:
minItems: 1
maxItems: 3

'#clock-cells':
const: 1

power-domains:
maxItems: 1

'#power-domain-cells':
const: 1

Expand All @@ -57,8 +63,6 @@ required:
- '#clock-cells'
- '#power-domain-cells'

additionalProperties: false

allOf:
- if:
properties:
Expand Down Expand Up @@ -125,6 +129,9 @@ allOf:

reg:
maxItems: 1

additionalProperties: false

examples:
- |
#include <dt-bindings/clock/qcom,rpmh.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,11 @@ allOf:

properties:
compatible:
const: qcom,sdm845-camcc
oneOf:
- items:
- const: qcom,sdm670-camcc
- const: qcom,sdm845-camcc
- const: qcom,sdm845-camcc

clocks:
items:
Expand Down
46 changes: 46 additions & 0 deletions Documentation/devicetree/bindings/clock/qcom,sm6115-lpasscc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/qcom,sm6115-lpasscc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm LPASS Core & Audio Clock Controller on SM6115

maintainers:
- Konrad Dybcio <konradybcio@kernel.org>
- Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

description: |
Qualcomm LPASS core and audio clock controllers provide audio-related resets
on SM6115 and its derivatives.
See also::
include/dt-bindings/clock/qcom,sm6115-lpasscc.h
properties:
compatible:
enum:
- qcom,sm6115-lpassaudiocc
- qcom,sm6115-lpasscc

reg:
maxItems: 1

'#reset-cells':
const: 1

required:
- compatible
- reg
- '#reset-cells'

additionalProperties: false

examples:
- |
lpass_audiocc: clock-controller@a6a9000 {
compatible = "qcom,sm6115-lpassaudiocc";
reg = <0x0a6a9000 0x1000>;
#reset-cells = <1>;
};
...
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ description: |
include/dt-bindings/clock/qcom,sm8450-camcc.h
include/dt-bindings/clock/qcom,sm8550-camcc.h
include/dt-bindings/clock/qcom,sm8650-camcc.h
include/dt-bindings/clock/qcom,x1e80100-camcc.h
properties:
compatible:
Expand All @@ -29,7 +28,6 @@ properties:
- qcom,sm8475-camcc
- qcom,sm8550-camcc
- qcom,sm8650-camcc
- qcom,x1e80100-camcc

clocks:
items:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ properties:
- qcom,sm8550-gpucc
- qcom,sm8650-gpucc
- qcom,x1e80100-gpucc
- qcom,x1p42100-gpucc

clocks:
items:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,12 @@ maintainers:

description: |
Qualcomm display clock control module provides the clocks, resets and power
domains on SM8550.
domains on SM8550, SM8650, SM8750 and few other platforms.
See also:
- include/dt-bindings/clock/qcom,sm8550-dispcc.h
- include/dt-bindings/clock/qcom,sm8650-dispcc.h
- include/dt-bindings/clock/qcom,sm8750-dispcc.h
- include/dt-bindings/clock/qcom,x1e80100-dispcc.h
properties:
Expand All @@ -25,6 +26,7 @@ properties:
- qcom,sar2130p-dispcc
- qcom,sm8550-dispcc
- qcom,sm8650-dispcc
- qcom,sm8750-dispcc
- qcom,x1e80100-dispcc

clocks:
Expand Down
Loading

0 comments on commit 641b0c6

Please sign in to comment.