OSDN Git Service

clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@somainline.org>
Thu, 14 Jan 2021 22:10:54 +0000 (23:10 +0100)
committerStephen Boyd <sboyd@kernel.org>
Mon, 8 Feb 2021 18:17:49 +0000 (10:17 -0800)
commit292f75ecff07e8a07fe2e3e19b4b567d0b698842
treea825129e9dc6a49b488f802751b8e52afaa1f047
parentf86114913085e33716e183c51ecd6849701f3ac2
clk: qcom: gcc-msm8998: Fix Alpha PLL type for all GPLLs

All of the GPLLs in the MSM8998 Global Clock Controller are Fabia PLLs
and not generic alphas: this was producing bad effects over the entire
clock tree of MSM8998, where any GPLL child clock was declaring a false
clock rate, due to their parent also showing the same.

The issue resides in the calculation of the clock rate for the specific
Alpha PLL type, where Fabia has a different register layout; switching
the MSM8998 GPLLs to the correct Alpha Fabia PLL type fixes the rate
(calculation) reading. While at it, also make these PLLs fixed since
their rate is supposed to *never* be changed while the system runs, as
this would surely crash the entire SoC.

Now all the children of all the PLLs are also complying with their
specified clock table and system stability is improved.

Fixes: b5f5f525c547 ("clk: qcom: Add MSM8998 Global Clock Control (GCC) driver")
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@somainline.org>
Link: https://lore.kernel.org/r/20210114221059.483390-7-angelogioacchino.delregno@somainline.org
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/qcom/gcc-msm8998.c