clk: qcom: Implement RPM clocks for MSM8660/APQ8060
authorLinus Walleij <linus.walleij@linaro.org>
Fri, 13 Oct 2017 11:59:17 +0000 (13:59 +0200)
committerStephen Boyd <sboyd@codeaurora.org>
Thu, 2 Nov 2017 06:48:47 +0000 (23:48 -0700)
commitd4a69583dee775826c02fa64e20fbf6ab193a3fc
tree814785179f6f056e4c1943ed2de38a4c4c220811
parent856e6bb91e198c4fb0ca2f4f3ee0e7f660b3e0ca
clk: qcom: Implement RPM clocks for MSM8660/APQ8060

The RPM clocks were missing for MSM8660/APQ8060. For this to be
completed we need to add a special fixed rate RPM clock that is used
for the PLL4 on these SoCs. The rest of the clocks are pretty
similar to the other supported platforms.

The "active" clock pattern is mirrored in all the clocks. I guess
that the PLL4 that clocks the LPASS is actually never used as
"active only" since the low-power audio subsystem should be left
on when the CPU goes to idle, so that it can be used as a stand-alone
MP3 player type of device.

The PLL4 seems to be enabled only on behalf of the booting LPASS
Hexagon - which will cast its own vote once its booted - and as
such we only configure the active state (meaning both states will
have same configuration). The result is that PLL4 will be on
from prepare() to unprepare() regardless of what the application
CPU does.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/qcom/clk-rpm.c