Commit b92c35e1 authored by Georgi Djakov's avatar Georgi Djakov

interconnect: qcom: Use the standard aggregate function

Now we have a common function for standard aggregation, so let's use it,
instead of duplicating the code.
Reviewed-by: default avatarBrian Masney <masneyb@onstation.org>
Reviewed-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: default avatarEvan Green <evgreen@chromium.org>
Signed-off-by: default avatarGeorgi Djakov <georgi.djakov@linaro.org>
parent 3172e4d2
...@@ -550,15 +550,6 @@ static struct msm8974_icc_desc msm8974_snoc = { ...@@ -550,15 +550,6 @@ static struct msm8974_icc_desc msm8974_snoc = {
.num_nodes = ARRAY_SIZE(msm8974_snoc_nodes), .num_nodes = ARRAY_SIZE(msm8974_snoc_nodes),
}; };
static int msm8974_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
u32 peak_bw, u32 *agg_avg, u32 *agg_peak)
{
*agg_avg += avg_bw;
*agg_peak = max(*agg_peak, peak_bw);
return 0;
}
static void msm8974_icc_rpm_smd_send(struct device *dev, int rsc_type, static void msm8974_icc_rpm_smd_send(struct device *dev, int rsc_type,
char *name, int id, u64 val) char *name, int id, u64 val)
{ {
...@@ -603,8 +594,8 @@ static int msm8974_icc_set(struct icc_node *src, struct icc_node *dst) ...@@ -603,8 +594,8 @@ static int msm8974_icc_set(struct icc_node *src, struct icc_node *dst)
qp = to_msm8974_icc_provider(provider); qp = to_msm8974_icc_provider(provider);
list_for_each_entry(n, &provider->nodes, node_list) list_for_each_entry(n, &provider->nodes, node_list)
msm8974_icc_aggregate(n, 0, n->avg_bw, n->peak_bw, provider->aggregate(n, 0, n->avg_bw, n->peak_bw,
&agg_avg, &agg_peak); &agg_avg, &agg_peak);
sum_bw = icc_units_to_bps(agg_avg); sum_bw = icc_units_to_bps(agg_avg);
max_peak_bw = icc_units_to_bps(agg_peak); max_peak_bw = icc_units_to_bps(agg_peak);
...@@ -694,7 +685,7 @@ static int msm8974_icc_probe(struct platform_device *pdev) ...@@ -694,7 +685,7 @@ static int msm8974_icc_probe(struct platform_device *pdev)
INIT_LIST_HEAD(&provider->nodes); INIT_LIST_HEAD(&provider->nodes);
provider->dev = dev; provider->dev = dev;
provider->set = msm8974_icc_set; provider->set = msm8974_icc_set;
provider->aggregate = msm8974_icc_aggregate; provider->aggregate = icc_std_aggregate;
provider->xlate = of_icc_xlate_onecell; provider->xlate = of_icc_xlate_onecell;
provider->data = data; provider->data = data;
......
...@@ -327,15 +327,6 @@ static struct qcom_icc_desc qcs404_snoc = { ...@@ -327,15 +327,6 @@ static struct qcom_icc_desc qcs404_snoc = {
.num_nodes = ARRAY_SIZE(qcs404_snoc_nodes), .num_nodes = ARRAY_SIZE(qcs404_snoc_nodes),
}; };
static int qcom_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
u32 peak_bw, u32 *agg_avg, u32 *agg_peak)
{
*agg_avg += avg_bw;
*agg_peak = max(*agg_peak, peak_bw);
return 0;
}
static int qcom_icc_set(struct icc_node *src, struct icc_node *dst) static int qcom_icc_set(struct icc_node *src, struct icc_node *dst)
{ {
struct qcom_icc_provider *qp; struct qcom_icc_provider *qp;
...@@ -354,8 +345,8 @@ static int qcom_icc_set(struct icc_node *src, struct icc_node *dst) ...@@ -354,8 +345,8 @@ static int qcom_icc_set(struct icc_node *src, struct icc_node *dst)
qp = to_qcom_provider(provider); qp = to_qcom_provider(provider);
list_for_each_entry(n, &provider->nodes, node_list) list_for_each_entry(n, &provider->nodes, node_list)
qcom_icc_aggregate(n, 0, n->avg_bw, n->peak_bw, provider->aggregate(n, 0, n->avg_bw, n->peak_bw,
&agg_avg, &agg_peak); &agg_avg, &agg_peak);
sum_bw = icc_units_to_bps(agg_avg); sum_bw = icc_units_to_bps(agg_avg);
max_peak_bw = icc_units_to_bps(agg_peak); max_peak_bw = icc_units_to_bps(agg_peak);
...@@ -456,7 +447,7 @@ static int qnoc_probe(struct platform_device *pdev) ...@@ -456,7 +447,7 @@ static int qnoc_probe(struct platform_device *pdev)
INIT_LIST_HEAD(&provider->nodes); INIT_LIST_HEAD(&provider->nodes);
provider->dev = dev; provider->dev = dev;
provider->set = qcom_icc_set; provider->set = qcom_icc_set;
provider->aggregate = qcom_icc_aggregate; provider->aggregate = icc_std_aggregate;
provider->xlate = of_icc_xlate_onecell; provider->xlate = of_icc_xlate_onecell;
provider->data = data; provider->data = data;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment