From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
To: Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Conor Dooley <conor+dt@kernel.org>,
Andy Gross <agross@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konrad.dybcio@linaro.org>,
Ilia Lin <ilia.lin@kernel.org>, Viresh Kumar <vireshk@kernel.org>,
Nishanth Menon <nm@ti.com>, Stephen Boyd <sboyd@kernel.org>,
Michael Turquette <mturquette@baylibre.com>,
"Rafael J. Wysocki" <rafael@kernel.org>
Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
linux-pm@vger.kernel.org, linux-clk@vger.kernel.org,
Christian Marangi <ansuelsmth@gmail.com>
Subject: [PATCH 00/18] ARM: qcom: apq8064: support CPU frequency scaling
Date: Mon, 12 Jun 2023 08:39:04 +0300 [thread overview]
Message-ID: <20230612053922.3284394-1-dmitry.baryshkov@linaro.org> (raw)
Implement CPUFreq support for one of the oldest supported Qualcomm
platforms, APQ8064. Each core has independent power and frequency
control. Additionally the L2 cache is scaled to follow the CPU
frequencies (failure to do so results in strange semi-random crashes).
Core voltage is controlled through the SAW2 devices, one for each core.
The L2 has two regulators, vdd-mem and vdd-dig.
Depenency: [1] for interconnect-clk implementation
https://lore.kernel.org/linux-arm-msm/20230512001334.2983048-3-dmitry.baryshkov@linaro.org/
Dmitry Baryshkov (18):
dt-bindings: opp: opp-v2-kryo-cpu: support Qualcomm Krait SoCs
dt-bindings: soc: qcom: merge qcom,saw2.txt into qcom,spm.yaml
dt-bindings: soc: qcom: qcom,saw2: define optional regulator node
dt-bindings: clock: qcom,krait-cc: Krait core clock controller
clk: qcom: krait-cc: rewrite driver to use clk_hw instead of clk
clk: qcom: krait-cc: export L2 clock as an interconnect
soc: qcom: spm: add support for voltage regulator
cpufreq: qcom-nvmem: also accept operating-points-v2-krait-cpu
cpufreq: qcom-nvmem: Add support for voltage scaling
cpufreq: qcom-nvmem: drop pvs_ver for format a fuses
cpufreq: qcom-nvmem: provide separate configuration data for apq8064
ARM: dts: qcom: apq8064: rename SAW nodes to power-manager
ARM: dts: qcom: apq8064: declare SAW2 regulators
ARM: dts: qcom: apq8064: add simple CPUFreq support
ARM: dts: qcom: apq8064: provide voltage scaling tables
ARM: dts: qcom: apq8064: enable passive CPU cooling
ARM: dts: qcom: apq8064-asus-nexus7-flo: constraint cpufreq regulators
ARM: dts: qcom: apq8064-ifc6410: constraint cpufreq regulators
.../devicetree/bindings/arm/msm/qcom,saw2.txt | 58 -
.../bindings/opp/opp-v2-kryo-cpu.yaml | 11 +-
.../qcom/{qcom,spm.yaml => qcom,saw2.yaml} | 39 +-
.../boot/dts/qcom-apq8064-asus-nexus7-flo.dts | 14 +-
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts | 18 +-
arch/arm/boot/dts/qcom-apq8064.dtsi | 1247 ++++++++++++++++-
drivers/clk/qcom/Kconfig | 1 +
drivers/clk/qcom/krait-cc.c | 185 +--
drivers/cpufreq/qcom-cpufreq-nvmem.c | 164 ++-
drivers/soc/qcom/spm.c | 205 ++-
include/dt-bindings/clock/qcom,krait-cc.h | 20 +
include/soc/qcom/spm.h | 9 +
12 files changed, 1806 insertions(+), 165 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,saw2.txt
rename Documentation/devicetree/bindings/soc/qcom/{qcom,spm.yaml => qcom,saw2.yaml} (58%)
create mode 100644 include/dt-bindings/clock/qcom,krait-cc.h
--
2.39.2
next reply other threads:[~2023-06-12 5:39 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-12 5:39 Dmitry Baryshkov [this message]
2023-06-11 16:27 ` [PATCH 00/18] ARM: qcom: apq8064: support CPU frequency scaling Christian Marangi
2023-06-12 14:20 ` Dmitry Baryshkov
2023-06-13 16:19 ` Christian Marangi
2023-06-14 20:18 ` Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 01/18] dt-bindings: opp: opp-v2-kryo-cpu: support Qualcomm Krait SoCs Dmitry Baryshkov
2023-06-14 16:01 ` Krzysztof Kozlowski
2023-06-14 20:11 ` Dmitry Baryshkov
2023-06-21 8:51 ` Krzysztof Kozlowski
2023-06-12 5:39 ` [PATCH 02/18] dt-bindings: soc: qcom: merge qcom,saw2.txt into qcom,spm.yaml Dmitry Baryshkov
2023-06-14 16:03 ` Krzysztof Kozlowski
2023-06-12 5:39 ` [PATCH 03/18] dt-bindings: soc: qcom: qcom,saw2: define optional regulator node Dmitry Baryshkov
2023-06-14 16:05 ` Krzysztof Kozlowski
2023-06-14 22:49 ` Dmitry Baryshkov
2023-06-21 8:46 ` Krzysztof Kozlowski
2023-06-12 5:39 ` [PATCH 04/18] dt-bindings: clock: qcom,krait-cc: Krait core clock controller Dmitry Baryshkov
[not found] ` <3ce1bd9b0cb23e4e60b093327e705d69.sboyd@kernel.org>
2023-06-12 22:33 ` Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 05/18] clk: qcom: krait-cc: rewrite driver to use clk_hw instead of clk Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 06/18] clk: qcom: krait-cc: export L2 clock as an interconnect Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 07/18] soc: qcom: spm: add support for voltage regulator Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 08/18] cpufreq: qcom-nvmem: also accept operating-points-v2-krait-cpu Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 09/18] cpufreq: qcom-nvmem: Add support for voltage scaling Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 10/18] cpufreq: qcom-nvmem: drop pvs_ver for format a fuses Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 11/18] cpufreq: qcom-nvmem: provide separate configuration data for apq8064 Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 12/18] ARM: dts: qcom: apq8064: rename SAW nodes to power-manager Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 13/18] ARM: dts: qcom: apq8064: declare SAW2 regulators Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 14/18] ARM: dts: qcom: apq8064: add simple CPUFreq support Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 15/18] ARM: dts: qcom: apq8064: provide voltage scaling tables Dmitry Baryshkov
2023-06-12 9:01 ` Stephan Gerhold
2023-06-12 13:33 ` Dmitry Baryshkov
2023-06-11 22:16 ` Christian Marangi
2023-06-12 13:59 ` Stephan Gerhold
2023-06-12 15:38 ` Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 16/18] ARM: dts: qcom: apq8064: enable passive CPU cooling Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 17/18] ARM: dts: qcom: apq8064-asus-nexus7-flo: constraint cpufreq regulators Dmitry Baryshkov
2023-06-12 5:39 ` [PATCH 18/18] ARM: dts: qcom: apq8064-ifc6410: " Dmitry Baryshkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230612053922.3284394-1-dmitry.baryshkov@linaro.org \
--to=dmitry.baryshkov@linaro.org \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=ansuelsmth@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=ilia.lin@kernel.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=mturquette@baylibre.com \
--cc=nm@ti.com \
--cc=rafael@kernel.org \
--cc=robh+dt@kernel.org \
--cc=sboyd@kernel.org \
--cc=vireshk@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).