mbox series

[v2,0/9] SDM630/660 GCC/MMCC/GPUCC clock controllers

Message ID 20210113183817.447866-1-angelogioacchino.delregno@somainline.org
Headers show
Series SDM630/660 GCC/MMCC/GPUCC clock controllers | expand

Message

AngeloGioacchino Del Regno Jan. 13, 2021, 6:38 p.m. UTC
This patch series brings up the MultiMedia Clock Controller (MMCC)
and the GPU Clock Controller (GPUCC), plus includes some fixes for
the SDM660 GCC, which are necessary for correct functionality of
the clocks from the two new drivers, without causing lockups.

There is also a change in the RCG2 GFX3D, which generalizes the
gfx3d pingpong handling functions, in order to be able to reuse
them for more than just one specific SoC (MSM8996), bringing no
functional changes to the aforementioned SoC, which got a MMCC
driver gfx3d clock fix for the generalization... obviously.

This patch series has been tested against the following devices:
 - Sony Xperia XA2 Ultra (SDM630 Nile Discovery)
 - Sony Xperia 10        (SDM630 Ganges Kirin)
 - Sony Xperia 10 Plus   (SDM636 Ganges Mermaid)

AngeloGioacchino Del Regno (8):
  clk: qcom: gcc-sdm660: Mark MMSS NoC CFG AHB clock as critical
  clk: qcom: gcc-sdm660: Mark GPU CFG AHB clock as critical
  dt-bindings: clock: Add support for the SDM630 and SDM660 mmcc
  clk: qcom: rcg2: Stop hardcoding gfx3d pingpong parent numbers
  clk: qcom: mmcc-msm8996: Migrate gfx3d clock to clk_rcg2_gfx3d
  clk: qcom: gdsc: Implement NO_RET_PERIPH flag
  clk: qcom: Add SDM660 GPU Clock Controller (GPUCC) driver
  dt-bindings: clock: Add QCOM SDM630 and SDM660 graphics clock bindings

Martin Botka (1):
  clk: qcom: Add SDM660 Multimedia Clock Controller (MMCC) driver

 .../bindings/clock/qcom,gpucc-sdm660.yaml     |   76 +
 .../devicetree/bindings/clock/qcom,mmcc.yaml  |    2 +
 drivers/clk/qcom/Kconfig                      |   18 +
 drivers/clk/qcom/Makefile                     |    2 +
 drivers/clk/qcom/clk-rcg.h                    |    9 +
 drivers/clk/qcom/clk-rcg2.c                   |   56 +-
 drivers/clk/qcom/gcc-sdm660.c                 |    7 +
 drivers/clk/qcom/gdsc.c                       |   10 +-
 drivers/clk/qcom/gdsc.h                       |    3 +-
 drivers/clk/qcom/gpucc-sdm660.c               |  349 ++
 drivers/clk/qcom/mmcc-msm8996.c               |   29 +-
 drivers/clk/qcom/mmcc-sdm660.c                | 2864 +++++++++++++++++
 include/dt-bindings/clock/qcom,gpucc-sdm660.h |   28 +
 include/dt-bindings/clock/qcom,mmcc-sdm660.h  |  162 +
 14 files changed, 3581 insertions(+), 34 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/clock/qcom,gpucc-sdm660.yaml
 create mode 100644 drivers/clk/qcom/gpucc-sdm660.c
 create mode 100644 drivers/clk/qcom/mmcc-sdm660.c
 create mode 100644 include/dt-bindings/clock/qcom,gpucc-sdm660.h
 create mode 100644 include/dt-bindings/clock/qcom,mmcc-sdm660.h