Skip to content

Add support for MSM8996 clock controllers

Stephen Boyd linux-arm-msm linux-clk lkml 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest5 patches 5 repliesIn review
  2. v15 patches 2 repliesSuperseded

Changes in v2 from the cover letter

* Added some missing clocks in gcc and mmcc drivers
* Updated PLL settings in mmcc

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/5clk: divider: Cap table divider values to 'width' memberdrivers/clk/clk-divider.c+5 -40 replies
2/5clk: qcom: Add Alpha PLL supportdrivers/clk/qcom/Makefile drivers/clk/qcom/clk-alpha-pll.c drivers/clk/qcom/clk-alpha-pll.h+413 -00 replies
3/5clk: qcom: Add MSM8996 Global Clock Control (GCC) driverDocumentation/devicetree/bindings/clock/qcom,gcc.txt drivers/clk/qcom/Kconfig drivers/clk/qcom/Makefile +2 more+3771 -04 replies
4/5clk: qcom: Add gfx3d ping-pong PLL frequency switchingdrivers/clk/qcom/clk-rcg.h drivers/clk/qcom/clk-rcg2.c+88 -00 replies
5/5clk: qcom: Add MSM8996 Multimedia Clock Controller (MMCC) driverDocumentation/devicetree/bindings/clock/qcom,mmcc.txt drivers/clk/qcom/Kconfig drivers/clk/qcom/Makefile +2 more+3513 -00 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [PATCH v2 0/5] Add support for MSM8996 clock controllers

These patches add support for the global and multimedia clock controllers found on MSM8996 devices. The first patch allows us to implement a "power of two" divider of different widths with a table based divider. The second patch adds support for Alpha PLLs and the 3rd and 5th patches add support for the two clock controllers. The fourth patch is a new type of clock ops for the graphics clock that does some custom ping-pong between different PLLs when switching graphics frequencies.

Changes from v1:
* Added some missing clocks in gcc and mmcc drivers
* Updated PLL settings in mmcc

Stephen Boyd (5):
clk: divider: Cap table divider values to 'width' member
clk: qcom: Add Alpha PLL support
clk: qcom: Add MSM8996 Global Clock Control (GCC) driver
clk: qcom: Add gfx3d ping-pong PLL frequency switching
clk: qcom: Add MSM8996 Multimedia Clock Controller (MMCC) driver

 .../devicetree/bindings/clock/qcom,gcc.txt         |    1 +
 .../devicetree/bindings/clock/qcom,mmcc.txt        |    1 +
 drivers/clk/clk-divider.c                          |    9 +-
 drivers/clk/qcom/Kconfig                           |   17 +
 drivers/clk/qcom/Makefile                          |    3 +
 drivers/clk/qcom/clk-alpha-pll.c                   |  355 ++
 drivers/clk/qcom/clk-alpha-pll.h                   |   57 +
 drivers/clk/qcom/clk-rcg.h                         |    1 +
 drivers/clk/qcom/clk-rcg2.c                        |   87 +
 drivers/clk/qcom/gcc-msm8996.c                     | 3422 ++++++++++++++++++++
 drivers/clk/qcom/mmcc-msm8996.c                    | 3217 ++++++++++++++++++
 include/dt-bindings/clock/qcom,gcc-msm8996.h       |  339 ++
 include/dt-bindings/clock/qcom,mmcc-msm8996.h      |  285 ++
 13 files changed, 7790 insertions(+), 4 deletions(-)
 create mode 100644 drivers/clk/qcom/clk-alpha-pll.c
 create mode 100644 drivers/clk/qcom/clk-alpha-pll.h
 create mode 100644 drivers/clk/qcom/gcc-msm8996.c
 create mode 100644 drivers/clk/qcom/mmcc-msm8996.c
 create mode 100644 include/dt-bindings/clock/qcom,gcc-msm8996.h
 create mode 100644 include/dt-bindings/clock/qcom,mmcc-msm8996.h
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project