[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200722110139.24778-3-georgi.djakov@linaro.org>
Date: Wed, 22 Jul 2020 14:01:39 +0300
From: Georgi Djakov <georgi.djakov@...aro.org>
To: linux-pm@...r.kernel.org
Cc: saravanak@...gle.com, mdtipton@...eaurora.org,
okukatla@...eaurora.org, bjorn.andersson@...aro.org,
vincent.guittot@...aro.org, georgi.djakov@...aro.org,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH v2 2/2] interconnect: qcom: Use icc_sync_state in sdm845 and osm-3l drivers
Lowering the bandwidth on the bus might have negative consequences if
it's done before all consumers had a chance to cast their vote. Let's
return the maximum amount of bandwidth as initial value. This bandwidth
level would be maintained until all consumers have probed.
Signed-off-by: Georgi Djakov <georgi.djakov@...aro.org>
---
drivers/interconnect/qcom/osm-l3.c | 3 +++
drivers/interconnect/qcom/sdm845.c | 3 +++
2 files changed, 6 insertions(+)
diff --git a/drivers/interconnect/qcom/osm-l3.c b/drivers/interconnect/qcom/osm-l3.c
index 96fb9ff5ff2e..54aff6273af1 100644
--- a/drivers/interconnect/qcom/osm-l3.c
+++ b/drivers/interconnect/qcom/osm-l3.c
@@ -236,6 +236,8 @@ static int qcom_osm_l3_probe(struct platform_device *pdev)
node->name = qnodes[i]->name;
node->data = qnodes[i];
+ node->init_avg = INT_MAX;
+ node->init_peak = INT_MAX;
icc_node_add(node, provider);
for (j = 0; j < qnodes[i]->num_links; j++)
@@ -268,6 +270,7 @@ static struct platform_driver osm_l3_driver = {
.driver = {
.name = "osm-l3",
.of_match_table = osm_l3_of_match,
+ .sync_state = icc_sync_state,
},
};
module_platform_driver(osm_l3_driver);
diff --git a/drivers/interconnect/qcom/sdm845.c b/drivers/interconnect/qcom/sdm845.c
index f6c7b969520d..c04775820f15 100644
--- a/drivers/interconnect/qcom/sdm845.c
+++ b/drivers/interconnect/qcom/sdm845.c
@@ -503,6 +503,8 @@ static int qnoc_probe(struct platform_device *pdev)
node->name = qnodes[i]->name;
node->data = qnodes[i];
+ node->init_avg = INT_MAX;
+ node->init_peak = INT_MAX;
icc_node_add(node, provider);
for (j = 0; j < qnodes[i]->num_links; j++)
@@ -559,6 +561,7 @@ static struct platform_driver qnoc_driver = {
.driver = {
.name = "qnoc-sdm845",
.of_match_table = qnoc_of_match,
+ .sync_state = icc_sync_state,
},
};
module_platform_driver(qnoc_driver);
Powered by blists - more mailing lists