diff options
author | Konrad Dybcio <konrad.dybcio@linaro.org> | 2023-06-19 15:04:46 +0200 |
---|---|---|
committer | Bjorn Andersson <andersson@kernel.org> | 2023-07-15 18:54:45 +0200 |
commit | 3b7480106bf8ac2666d901e42bf9835959f79e7f (patch) | |
tree | bfa771f2d96f6225178aafdc16ed29414289ca4b /drivers/interconnect | |
parent | interconnect: qcom: icc-rpm: Set bandwidth on both contexts (diff) | |
download | linux-3b7480106bf8ac2666d901e42bf9835959f79e7f.tar.xz linux-3b7480106bf8ac2666d901e42bf9835959f79e7f.zip |
interconnect: qcom: icc-rpm: Set correct bandwidth through RPM bw req
Currently, we're setting the aggregated-on-provider bandwidth on each
node, individually. That is of course incorrect and results in far too
high votes. Use the correct values to ensure we're not wasting power.
Fixes: 30c8fa3ec61a ("interconnect: qcom: Add MSM8916 interconnect provider driver")
Reported-by: Stephan Gerhold <stephan@gerhold.net>
Reviewed-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Acked-by: Georgi Djakov <djakov@kernel.org>
Link: https://lore.kernel.org/r/20230526-topic-smd_icc-v7-21-09c78c175546@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Diffstat (limited to 'drivers/interconnect')
-rw-r--r-- | drivers/interconnect/qcom/icc-rpm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c index 928dc27c1d93..5733261d9407 100644 --- a/drivers/interconnect/qcom/icc-rpm.c +++ b/drivers/interconnect/qcom/icc-rpm.c @@ -354,12 +354,12 @@ static int qcom_icc_set(struct icc_node *src, struct icc_node *dst) qcom_icc_bus_aggregate(provider, agg_avg, agg_peak, &max_agg_avg); - ret = qcom_icc_rpm_set(src_qn, agg_avg); + ret = qcom_icc_rpm_set(src_qn, src_qn->sum_avg); if (ret) return ret; if (dst_qn) { - ret = qcom_icc_rpm_set(dst_qn, agg_avg); + ret = qcom_icc_rpm_set(dst_qn, dst_qn->sum_avg); if (ret) return ret; } |