linux/drivers/clk/qcom
Linus Torvalds 3476195651 There's not much to see in the core framework this time around. Instead the
majority of the diff is the normal collection of driver additions for new SoCs
 and non-critical clk data fixes and updates. The framework must be middle aged.
 
 The two biggest directories in the diffstat show that the Qualcomm and Unisoc
 support added a handful of big drivers for new SoCs but that's not really the
 whole story because those new drivers tend to add large numbers of lines of clk
 data. There's a handful of AT91 clk drivers added this time around too and a
 bunch of improvements to drivers like the i.MX driver. All around lots of
 updates and fixes in various clk drivers which is good to see.
 
 The core framework has only one real major change which has been baking in next
 for the past couple months. It fixes the framework so that it stops caching a
 clk's phase when the phase clk_op returns an error. Before this change we would
 consider some negative errno as a phase and that just doesn't make sense.
 
 Core:
  - Don't show clk phase when it is invalid
 
 New Drivers:
  - Add support for Unisoc SC9863A clks
  - Qualcomm SM8250 RPMh and MSM8976 RPM clks
  - Qualcomm SM8250 Global Clock Controller (GCC) support
  - Qualcomm SC7180 Modem Clock Controller (MSS CC) support
  - EHRPWM's TimeBase clock(TBCLK) for TI AM654 SoCs
  - Support PMC clks on at91sam9n12, at91rm9200, sama5d3, and at91sam9g45 SoCs
 
 Updates:
  - GPU GX GDSC support on Qualcomm sc7180
  - Fixes and improvements for the Marvell MMP2/MMP3 SoC clk drivers
  - A series from Anson to convert i.MX8 clock bindings to json-schema
  - Update i.MX pll14xx driver to include new frequency entries for pll1443x table,
    and return error for invalid PLL type
  - Add missing of_node_put() call for a number of i.MX clock drivers
  - Drop flag CLK_IS_CRITICAL from 'A53_CORE' mux clock, as we already
    have the flag on its child cpu clock
  - Fix a53 cpu clock for i.MX8 drivers to get it source from ARM PLL
    via CORE_SEL slice, and source from A53 CCM clk root when we need to
    change ARM PLL frequency. Thus, we can support core running above
    1GHz safely
  - Update i.MX pfdv2 driver to check zero rate and use determine_rate for
    getting the best rate
  - Add CLKO2 for imx8mm, SNVS clock for imx8mn, and PXP clock for imx7d
  - Remove PMC clks from Tegra clk driver
  - Improved clock/reset handling for the Renesas R-Car USB2 Clock Selector
  - Conversion to json-schema of the Renesas CPG/MSSR DT bindings
  - Add Crypto clocks on Renesas R-Car M3-W/W+, M3-N, E3, and D3
  - Add RPC (QSPI/HyperFLASH) clocks on Renesas R-Car H3, M3-W/W+, and M3-N
  - Update Amlogic audio clock gate hierarchy for meson8 and gxbb
  - Update Amlogic g12a spicc clock sources
  - Support for Ingenic X1000 TCU clks
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEE9L57QeeUxqYDyoaDrQKIl8bklSUFAl6JDxURHHNib3lkQGtl
 cm5lbC5vcmcACgkQrQKIl8bklSU51A/+OzAA4HyywcSwLWMhUbyWI0hWis8/Gdtv
 /tIOPY/+J/Wi+2vFXoZEQWr/GViEEC1ylQwtkc/cm1WklEka/+q+GJFawyyIfX2i
 ovofDWw5lJd4/ACaOqV4ryEppwHnPUvASvoIOUXX6IwauNQzI0dRZWTOLTg2YW7x
 uvI5OtQ8o71+bM+VL1tuhWvN/4Zx9tALNU9yhaRhHdafR+xQ0d4x5bBQo8MG/2E0
 3xIbRqGbhO6XfNiKAjgKcI3jtHn006LK1/1AjyXUETWzu5Zcg2SYb/YAah39RKLZ
 FTV+xY39C8JBLPt6ZLrBu9mPDcoQOWohmnDLki0qm65cfVs/tbDX3kwp3ixCly7y
 jSCqNpl7RuWcbjMe8YesakhJc1IFICQts08KsM6dPipL+7iAv++fNQrfrnXf0cDx
 cPCgDkepos/aRhNXmVFdxf2FRKkIQjYpdAPFdYSvLv6MK0Dk6G7/EhOOXA10Z2BU
 BojY8tUx/YaC8sRbnZlhitYfpqDVFzdihL2G6W31iUbt1sKYR6t6Szhct2EbRTOQ
 69bUy2lw7M8pk1Remp0LqdrVUDYLy0/X3dVaa/teIaZt2Ac1NnWzHw9LMmnlFFEG
 GxuZy5Q5fCKbAf0tSkD4Gzb9z8f0pzAyfdlpGsY7+eEEWloc4yNFCcFcNyzJTXWV
 4kdye0klUPs=
 =ZoI6
 -----END PGP SIGNATURE-----

Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux

Pull clk updates from Stephen Boyd:
 "There's not much to see in the core framework this time around.
  Instead the majority of the diff is the normal collection of driver
  additions for new SoCs and non-critical clk data fixes and updates.
  The framework must be middle aged.

  The two biggest directories in the diffstat show that the Qualcomm and
  Unisoc support added a handful of big drivers for new SoCs but that's
  not really the whole story because those new drivers tend to add large
  numbers of lines of clk data. There's a handful of AT91 clk drivers
  added this time around too and a bunch of improvements to drivers like
  the i.MX driver. All around lots of updates and fixes in various clk
  drivers which is good to see.

  The core framework has only one real major change which has been
  baking in next for the past couple months. It fixes the framework so
  that it stops caching a clk's phase when the phase clk_op returns an
  error. Before this change we would consider some negative errno as a
  phase and that just doesn't make sense.

  Core:
   - Don't show clk phase when it is invalid

  New Drivers:
   - Add support for Unisoc SC9863A clks
   - Qualcomm SM8250 RPMh and MSM8976 RPM clks
   - Qualcomm SM8250 Global Clock Controller (GCC) support
   - Qualcomm SC7180 Modem Clock Controller (MSS CC) support
   - EHRPWM's TimeBase clock(TBCLK) for TI AM654 SoCs
   - Support PMC clks on at91sam9n12, at91rm9200, sama5d3, and
     at91sam9g45 SoCs

  Updates:
   - GPU GX GDSC support on Qualcomm sc7180
   - Fixes and improvements for the Marvell MMP2/MMP3 SoC clk drivers
   - A series from Anson to convert i.MX8 clock bindings to json-schema
   - Update i.MX pll14xx driver to include new frequency entries for
     pll1443x table, and return error for invalid PLL type
   - Add missing of_node_put() call for a number of i.MX clock drivers
   - Drop flag CLK_IS_CRITICAL from 'A53_CORE' mux clock, as we already
     have the flag on its child cpu clock
   - Fix a53 cpu clock for i.MX8 drivers to get it source from ARM PLL
     via CORE_SEL slice, and source from A53 CCM clk root when we need
     to change ARM PLL frequency. Thus, we can support core running
     above 1GHz safely
   - Update i.MX pfdv2 driver to check zero rate and use determine_rate
     for getting the best rate
   - Add CLKO2 for imx8mm, SNVS clock for imx8mn, and PXP clock for
     imx7d
   - Remove PMC clks from Tegra clk driver
   - Improved clock/reset handling for the Renesas R-Car USB2 Clock
     Selector
   - Conversion to json-schema of the Renesas CPG/MSSR DT bindings
   - Add Crypto clocks on Renesas R-Car M3-W/W+, M3-N, E3, and D3
   - Add RPC (QSPI/HyperFLASH) clocks on Renesas R-Car H3, M3-W/W+, and
     M3-N
   - Update Amlogic audio clock gate hierarchy for meson8 and gxbb
   - Update Amlogic g12a spicc clock sources
   - Support for Ingenic X1000 TCU clks"

* tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (146 commits)
  clk: sprd: fix to get a correct ibias of pll
  dt-bindings: imx8mm-clock: Fix the file path
  dt-bindings: imx8mq-clock: Fix the file path
  clk: qcom: rpmh: Drop unnecessary semicolons
  clk: qcom: rpmh: Simplify clk_rpmh_bcm_send_cmd()
  clk: tegra: Use NULL for pointer initialization
  clk: sprd: add clocks support for SC9863A
  clk: sprd: support to get regmap from parent node
  clk: sprd: Add macros for referencing parents without strings
  clk: sprd: Add dt-bindings include file for SC9863A
  dt-bindings: clk: sprd: add bindings for sc9863a clock controller
  dt-bindings: clk: sprd: rename the common file name sprd.txt to SoC specific
  clk: sprd: add gate for pll clocks
  MAINTAINERS: dt: update reference for arm-integrator.txt
  clk: mmp2: Fix bit masks for LCDC I/O and pixel clocks
  clk: mmp2: Add clock for fifth SD HCI on MMP3
  dt-bindings: marvell,mmp2: Add clock id for the fifth SD HCI on MMP3
  clk: mmp2: Add clocks for the thermal sensors
  dt-bindings: marvell,mmp2: Add clock ids for the thermal sensors
  clk: mmp2: add the GPU clocks
  ...
2020-04-05 10:43:32 -07:00
..
a53-pll.c clk: qcom: Add A53 PLL support 2018-01-02 10:00:24 -08:00
apcs-msm8916.c clk: qcom: apcs-msm8916: use clk_parent_data to specify the parent 2020-01-04 23:15:47 -08:00
camcc-sdm845.c clk: qcom: Add camera clock controller driver for SDM845 2018-08-30 18:27:06 -07:00
clk-alpha-pll.c clk: qcom: clk-alpha-pll: Add support for controlling Lucid PLLs 2020-03-09 15:14:56 -07:00
clk-alpha-pll.h clk: qcom: clk-alpha-pll: Add support for controlling Lucid PLLs 2020-03-09 15:14:56 -07:00
clk-branch.c clk: qcom: branch: Add AON clock ops 2019-04-11 13:34:21 -07:00
clk-branch.h clk: qcom: branch: Add AON clock ops 2019-04-11 13:34:21 -07:00
clk-hfpll.c clk: let init callback return an error code 2019-12-23 18:53:13 -08:00
clk-hfpll.h clk: qcom: Add support for High-Frequency PLLs (HFPLLs) 2018-10-17 13:14:37 -07:00
clk-krait.c clk: qcom: Add safe switch hook for krait mux clocks 2018-10-17 13:15:05 -07:00
clk-krait.h clk: qcom: Add safe switch hook for krait mux clocks 2018-10-17 13:15:05 -07:00
clk-pll.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
clk-pll.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
clk-rcg2.c clk: qcom: rcg2: Don't crash if our parent can't be found; return an error 2020-02-03 23:04:02 -08:00
clk-rcg.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
clk-rcg.h clk: qcom: rcg2: Add support for display port clock ops 2019-12-18 21:22:00 -08:00
clk-regmap-divider.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
clk-regmap-divider.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
clk-regmap-mux-div.c clk: qcom: Add regmap mux-div clocks support 2018-01-02 10:00:24 -08:00
clk-regmap-mux-div.h clk: qcom: Use the correct style for SPDX License Identifier 2019-05-01 13:01:13 -07:00
clk-regmap-mux.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
clk-regmap-mux.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
clk-regmap.c clk: qcom: Update SPDX headers for common files 2018-07-25 09:23:33 -07:00
clk-regmap.h clk: qcom: Update SPDX headers for common files 2018-07-25 09:23:33 -07:00
clk-rpm.c clk: qcom: clk-rpm: add missing rpm clk for ipq806x 2020-03-13 13:56:31 -07:00
clk-rpmh.c clk: qcom: rpmh: Drop unnecessary semicolons 2020-03-24 19:35:02 -07:00
clk-smd-rpm.c clk: qcom: smd: Add support for MSM8976 rpm clocks 2020-03-09 14:13:05 -07:00
clk-spmi-pmic-div.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 2019-06-05 17:36:37 +02:00
common.c clk: qcom: Allow constant ratio freq tables for rcg 2019-11-07 13:43:19 -08:00
common.h clk: qcom: define probe by index API as common API 2019-08-08 08:20:01 -07:00
dispcc-sc7180.c clk: qcom: dispcc: Remove support of disp_cc_mdss_rscc_ahb_clk 2020-02-12 15:03:08 -08:00
dispcc-sdm845.c clk: qcom: dispcc: Add support for display port clocks 2019-12-18 21:24:13 -08:00
gcc-apq8084.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
gcc-ipq806x.c ipq806x: gcc: Added the enable regs and mask for PRNG 2020-03-20 16:29:02 -07:00
gcc-ipq4019.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
gcc-ipq6018.c clk: qcom: Add ipq6018 Global Clock Controller support 2020-01-09 12:42:55 -08:00
gcc-ipq8074.c clk: qcom: gcc: Use floor ops for SDCC clocks 2019-09-09 04:39:12 -07:00
gcc-mdm9615.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
gcc-msm8660.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
gcc-msm8916.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
gcc-msm8960.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
gcc-msm8974.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
gcc-msm8994.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 2019-06-05 17:36:37 +02:00
gcc-msm8996.c clk: qcom: gcc-msm8996: Fix parent for CLKREF clocks 2020-01-06 08:55:28 -08:00
gcc-msm8998.c clk: qcom: Add missing msm8998 gcc_bimc_gfx_clk 2019-12-23 18:24:48 -08:00
gcc-qcs404.c clk: qcom: gcc: limit GPLL0_AO_OUT operating frequency 2019-12-18 22:07:52 -08:00
gcc-sc7180.c clk: qcom: gcc: Add support for modem clocks in GCC 2020-03-20 16:28:02 -07:00
gcc-sdm660.c clk: qcom: gcc: Use floor ops for SDCC clocks 2019-09-09 04:39:12 -07:00
gcc-sdm845.c clk: qcom: gcc-sdm845: Add missing flag to votable GDSCs 2020-01-05 12:02:21 -08:00
gcc-sm8150.c clk: qcom: gcc: Add USB3 PIPE clock and GDSC for SM8150 2020-03-20 16:33:56 -07:00
gcc-sm8250.c clk: qcom: gcc: Add global clock controller driver for SM8250 2020-03-09 15:14:57 -07:00
gdsc.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
gdsc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 2019-06-05 17:36:37 +02:00
gpucc-msm8998.c clk: qcom: Avoid SMMU/cx gdsc corner cases 2019-12-18 22:02:27 -08:00
gpucc-sc7180.c clk: qcom: gpucc: Add support for GX GDSC for SC7180 2020-02-12 15:24:52 -08:00
gpucc-sdm845.c clk: qcom: gpu_cc_gmu_clk_src has 5 parents, not 6 2018-11-28 13:24:45 -08:00
hfpll.c clk: qcom: hfpll: use clk_parent_data to specify the parent 2019-12-18 22:07:52 -08:00
Kconfig clk: qcom: Add modem clock controller driver for SC7180 2020-03-20 16:28:05 -07:00
kpss-xcc.c clk: qcom: Add KPSS ACC/GCC driver 2018-10-17 13:14:54 -07:00
krait-cc.c clk: qcom: Add safe switch hook for krait mux clocks 2018-10-17 13:15:05 -07:00
lcc-ipq806x.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
lcc-mdm9615.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
lcc-msm8960.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
lpasscc-sdm845.c clk: qcom: define probe by index API as common API 2019-08-08 08:20:01 -07:00
Makefile clk: qcom: Add modem clock controller driver for SC7180 2020-03-20 16:28:05 -07:00
mmcc-apq8084.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
mmcc-msm8960.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
mmcc-msm8974.c clk: qcom: mmcc8974: move gfx3d_clk_src from the mmcc to rpm 2019-12-18 21:27:44 -08:00
mmcc-msm8996.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
mmcc-msm8998.c clk: qcom: Add MSM8998 Multimedia Clock Controller (MMCC) driver 2019-12-18 21:37:40 -08:00
mss-sc7180.c clk: qcom: Add modem clock controller driver for SC7180 2020-03-20 16:28:05 -07:00
q6sstop-qcs404.c clk: qcom: Add Q6SSTOP clock controller for QCS404 2019-11-07 13:10:36 -08:00
reset.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
reset.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
turingcc-qcs404.c clk: qcom: fix QCS404 TuringCC regmap 2019-09-09 09:05:22 -07:00
videocc-sc7180.c clk: qcom: videocc: Update the clock flag for video_cc_vcodec0_core_clk 2020-02-12 15:02:44 -08:00
videocc-sdm845.c clk: qcom: Move frequency table macro to common file 2018-07-06 16:45:51 -07:00