Re: [RFC v3 00/10] DDR/L3 Scaling support on SDM845 and SC7180 SoCs

From: Rob Clark
Date: Tue Jan 28 2020 - 21:54:54 EST


On Mon, Jan 27, 2020 at 12:05 PM Sibi Sankar <sibis@xxxxxxxxxxxxxx> wrote:
>
> This RFC series aims to extend cpu based scaling support to L3/DDR on
> SDM845 and SC7180 SoCs.
>
> Patches [1-3] - Blacklist SDM845 and SC7180 in cpufreq-dt-platdev
> Patches [5-7] - Hack in a way to add/remove multiple opp tables to
> a single device. I am yet to fix the debugfs to
> support multiple opp_tables per device but wanted to
> send what was working upstream to get an idea if multiple
> opp tables per device is a feature that will be useful
> upstream.
> Patches [9-10] - Add the cpu/cpu-ddr/cpu-l3 opp tables for SDM845
> and SC7180 SoCs.
>
> v3:
> * Migrated to using Saravana's opp-kBps bindings [1]
> * Fixed some misc comments from Rajendra
> * Added support for SC7180
>
> v2:
> * Incorporated Viresh's comments from:
> https://lore.kernel.org/lkml/20190410102429.r6j6brm5kspmqxc3@vireshk-i7/
> https://lore.kernel.org/lkml/20190410112516.gnh77jcwawvld6et@vireshk-i7/
> * Dropped cpufreq-map passive governor
>
> Git-branch: https://github.com/QuinAsura/linux/tree/lnext-012420
>
> Some alternate ways of hosting the opp-tables:
> https://github.com/QuinAsura/linux/commit/50b92bfaadc8f9a0d1e12249646e018bd6d1a9d3
> https://github.com/QuinAsura/linux/commit/3d23d1eefd16ae6d9e3ef91e93e78749d8844e98
> Viresh didn't really like ^^ bindings and they dont really scale well. Just
> including them here for completeness.
>
> Depends on the following series:
> [1] https://patchwork.kernel.org/cover/11277199/
> [2] https://patchwork.kernel.org/cover/11055499/
> [3] https://patchwork.kernel.org/cover/11326381/

So drive-by question, from the perspective of someone who cares about
a non-cpu device that frequently enjoys a lot of bandwidth (ie. the
GPU).. any thoughts on how ddr scaling would/should work for workloads
where the CPU is not particularly busy?

BR,
-R

>
> Sibi Sankar (10):
> arm64: dts: qcom: sdm845: Add SoC compatible to MTP
> cpufreq: blacklist SDM845 in cpufreq-dt-platdev
> cpufreq: blacklist SC7180 in cpufreq-dt-platdev
> OPP: Add and export helper to update voltage
> opp: of: export _opp_of_get_opp_desc_node
> opp: Allow multiple opp_tables to be mapped to a single device
> opp: Remove multiple attached opp tables from a device
> cpufreq: qcom: Update the bandwidth levels on frequency change
> arm64: dts: qcom: sdm845: Add cpu OPP tables
> arm64: dts: qcom: sc7180: Add cpu OPP tables
>
> arch/arm64/boot/dts/qcom/sc7180.dtsi | 287 +++++++++++++++
> arch/arm64/boot/dts/qcom/sdm845-mtp.dts | 2 +-
> arch/arm64/boot/dts/qcom/sdm845.dtsi | 453 ++++++++++++++++++++++++
> drivers/cpufreq/cpufreq-dt-platdev.c | 2 +
> drivers/cpufreq/qcom-cpufreq-hw.c | 246 +++++++++++--
> drivers/opp/core.c | 111 +++++-
> drivers/opp/of.c | 3 +-
> drivers/opp/opp.h | 2 +
> include/linux/pm_opp.h | 10 +
> 9 files changed, 1083 insertions(+), 33 deletions(-)
>
> --
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project