+++ /dev/null
-From 36874ac60c095178afa0616db16ee70f61c61d11 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 21 Jul 2021 10:54:32 -0700
-Subject: interconnect: qcom: icc-rpmh: Add BCMs to commit list in
- pre_aggregate
-
-From: Mike Tipton <mdtipton@codeaurora.org>
-
-[ Upstream commit f84f5b6f72e68bbaeb850b58ac167e4a3a47532a ]
-
-We're only adding BCMs to the commit list in aggregate(), but there are
-cases where pre_aggregate() is called without subsequently calling
-aggregate(). In particular, in icc_sync_state() when a node with initial
-BW has zero requests. Since BCMs aren't added to the commit list in
-these cases, we don't actually send the zero BW request to HW. So the
-resources remain on unnecessarily.
-
-Add BCMs to the commit list in pre_aggregate() instead, which is always
-called even when there are no requests.
-
-Fixes: 976daac4a1c5 ("interconnect: qcom: Consolidate interconnect RPMh support")
-Signed-off-by: Mike Tipton <mdtipton@codeaurora.org>
-Link: https://lore.kernel.org/r/20210721175432.2119-5-mdtipton@codeaurora.org
-Signed-off-by: Georgi Djakov <djakov@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/interconnect/qcom/icc-rpmh.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/interconnect/qcom/icc-rpmh.c b/drivers/interconnect/qcom/icc-rpmh.c
-index f6fae64861ce..27cc5f03611c 100644
---- a/drivers/interconnect/qcom/icc-rpmh.c
-+++ b/drivers/interconnect/qcom/icc-rpmh.c
-@@ -20,13 +20,18 @@ void qcom_icc_pre_aggregate(struct icc_node *node)
- {
- size_t i;
- struct qcom_icc_node *qn;
-+ struct qcom_icc_provider *qp;
-
- qn = node->data;
-+ qp = to_qcom_provider(node->provider);
-
- for (i = 0; i < QCOM_ICC_NUM_BUCKETS; i++) {
- qn->sum_avg[i] = 0;
- qn->max_peak[i] = 0;
- }
-+
-+ for (i = 0; i < qn->num_bcms; i++)
-+ qcom_icc_bcm_voter_add(qp->voter, qn->bcms[i]);
- }
- EXPORT_SYMBOL_GPL(qcom_icc_pre_aggregate);
-
-@@ -44,10 +49,8 @@ int qcom_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
- {
- size_t i;
- struct qcom_icc_node *qn;
-- struct qcom_icc_provider *qp;
-
- qn = node->data;
-- qp = to_qcom_provider(node->provider);
-
- if (!tag)
- tag = QCOM_ICC_TAG_ALWAYS;
-@@ -67,9 +70,6 @@ int qcom_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
- *agg_avg += avg_bw;
- *agg_peak = max_t(u32, *agg_peak, peak_bw);
-
-- for (i = 0; i < qn->num_bcms; i++)
-- qcom_icc_bcm_voter_add(qp->voter, qn->bcms[i]);
--
- return 0;
- }
- EXPORT_SYMBOL_GPL(qcom_icc_aggregate);
---
-2.30.2
-
pinctrl-mediatek-fix-fallback-behavior-for-bias_set_.patch
asoc-cs42l42-correct-definition-of-adc-volume-contro.patch
asoc-cs42l42-don-t-allow-snd_soc_daifmt_left_j.patch
-interconnect-qcom-icc-rpmh-add-bcms-to-commit-list-i.patch
asoc-sof-intel-hda-ipc-fix-reply-size-checking.patch
asoc-cs42l42-fix-inversion-of-adc-notch-switch-contr.patch
asoc-cs42l42-remove-duplicate-control-for-wnf-filter.patch
+++ /dev/null
-From 76e19213bc5fb535ef72a6f70e9a43cf2b5d9c72 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 21 Jul 2021 10:54:32 -0700
-Subject: interconnect: qcom: icc-rpmh: Add BCMs to commit list in
- pre_aggregate
-
-From: Mike Tipton <mdtipton@codeaurora.org>
-
-[ Upstream commit f84f5b6f72e68bbaeb850b58ac167e4a3a47532a ]
-
-We're only adding BCMs to the commit list in aggregate(), but there are
-cases where pre_aggregate() is called without subsequently calling
-aggregate(). In particular, in icc_sync_state() when a node with initial
-BW has zero requests. Since BCMs aren't added to the commit list in
-these cases, we don't actually send the zero BW request to HW. So the
-resources remain on unnecessarily.
-
-Add BCMs to the commit list in pre_aggregate() instead, which is always
-called even when there are no requests.
-
-Fixes: 976daac4a1c5 ("interconnect: qcom: Consolidate interconnect RPMh support")
-Signed-off-by: Mike Tipton <mdtipton@codeaurora.org>
-Link: https://lore.kernel.org/r/20210721175432.2119-5-mdtipton@codeaurora.org
-Signed-off-by: Georgi Djakov <djakov@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/interconnect/qcom/icc-rpmh.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/interconnect/qcom/icc-rpmh.c b/drivers/interconnect/qcom/icc-rpmh.c
-index f6fae64861ce..27cc5f03611c 100644
---- a/drivers/interconnect/qcom/icc-rpmh.c
-+++ b/drivers/interconnect/qcom/icc-rpmh.c
-@@ -20,13 +20,18 @@ void qcom_icc_pre_aggregate(struct icc_node *node)
- {
- size_t i;
- struct qcom_icc_node *qn;
-+ struct qcom_icc_provider *qp;
-
- qn = node->data;
-+ qp = to_qcom_provider(node->provider);
-
- for (i = 0; i < QCOM_ICC_NUM_BUCKETS; i++) {
- qn->sum_avg[i] = 0;
- qn->max_peak[i] = 0;
- }
-+
-+ for (i = 0; i < qn->num_bcms; i++)
-+ qcom_icc_bcm_voter_add(qp->voter, qn->bcms[i]);
- }
- EXPORT_SYMBOL_GPL(qcom_icc_pre_aggregate);
-
-@@ -44,10 +49,8 @@ int qcom_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
- {
- size_t i;
- struct qcom_icc_node *qn;
-- struct qcom_icc_provider *qp;
-
- qn = node->data;
-- qp = to_qcom_provider(node->provider);
-
- if (!tag)
- tag = QCOM_ICC_TAG_ALWAYS;
-@@ -67,9 +70,6 @@ int qcom_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
- *agg_avg += avg_bw;
- *agg_peak = max_t(u32, *agg_peak, peak_bw);
-
-- for (i = 0; i < qn->num_bcms; i++)
-- qcom_icc_bcm_voter_add(qp->voter, qn->bcms[i]);
--
- return 0;
- }
- EXPORT_SYMBOL_GPL(qcom_icc_aggregate);
---
-2.30.2
-
asoc-cs42l42-correct-definition-of-adc-volume-contro.patch
asoc-cs42l42-don-t-allow-snd_soc_daifmt_left_j.patch
asoc-cs42l42-fix-bclk-calculation-for-mono.patch
-interconnect-qcom-icc-rpmh-add-bcms-to-commit-list-i.patch
selftests-sgx-fix-q1-and-q2-calculation-in-sigstruct.patch
asoc-sof-intel-kconfig-fix-soundwire-dependencies.patch
asoc-sof-intel-hda-ipc-fix-reply-size-checking.patch