diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2016-08-18 20:40:45 +0200 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2016-10-04 15:48:02 +0100 |
commit | 3526403353c2a1b94c3181f900582626d23c339b (patch) | |
tree | 3c784f6e23188b014d6138c867fc3a6d5ad050d4 /firmware | |
parent | 8c5d0571596efa5656cc53144172baa7c5c57b43 (diff) | |
download | op-kernel-dev-3526403353c2a1b94c3181f900582626d23c339b.zip op-kernel-dev-3526403353c2a1b94c3181f900582626d23c339b.tar.gz |
mfd: qcom_rpm: Handle message RAM clock
The MSM8660, APQ8060, IPQ806x and MSM8960 have a GCC clock
to the message RAM used by the RPM. This needs to be enabled
for messages to pass through. This is a crude solution that
simply prepare/enable at probe() and disable/unprepare
at remove(). More elaborate PM is probably possible to
add later.
The construction uses IS_ERR() to gracefully handle the
platforms that do not provide a message RAM clock. It will
bail out of probe only if the clock is hitting a probe
deferral situation.
Of course this requires the proper device tree set-up:
rpm: rpm@104000 {
compatible = "qcom,rpm-msm8660";
clocks = <&gcc RPM_MSG_RAM_H_CLK>;
clock-names = "ram";
...
};
I have provided this in the MSM8660 device tree, and will
provide patches for the other targets.
Cc: Björn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'firmware')
0 files changed, 0 insertions, 0 deletions