]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
interconnect: qcom: icc-rpm: Set correct bandwidth through RPM bw req
authorKonrad Dybcio <konrad.dybcio@linaro.org>
Mon, 19 Jun 2023 13:04:46 +0000 (15:04 +0200)
committerBjorn Andersson <andersson@kernel.org>
Sat, 15 Jul 2023 16:54:45 +0000 (09:54 -0700)
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>
drivers/interconnect/qcom/icc-rpm.c

index 928dc27c1d9375593c1c4e0d07660070375550ba..5733261d9407c0e5d5fd08afd014db9d21abf3b8 100644 (file)
@@ -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;
        }