interconnect: qcom: Use the standard aggregate function
authorGeorgi Djakov <georgi.djakov@linaro.org>
Thu, 28 Nov 2019 13:48:39 +0000 (15:48 +0200)
committerGeorgi Djakov <georgi.djakov@linaro.org>
Mon, 16 Dec 2019 07:25:24 +0000 (09:25 +0200)
Now we have a common function for standard aggregation, so let's use it,
instead of duplicating the code.

Reviewed-by: Brian Masney <masneyb@onstation.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Evan Green <evgreen@chromium.org>
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
drivers/interconnect/qcom/msm8974.c
drivers/interconnect/qcom/qcs404.c

index e669a1f726d2eac48a8e467039efcd4513712172..3a313e11e73d76bf1f5392343d8d6aead33c1eb4 100644 (file)
@@ -550,15 +550,6 @@ static struct msm8974_icc_desc msm8974_snoc = {
        .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,
                                     char *name, int id, u64 val)
 {
@@ -603,8 +594,8 @@ static int msm8974_icc_set(struct icc_node *src, struct icc_node *dst)
        qp = to_msm8974_icc_provider(provider);
 
        list_for_each_entry(n, &provider->nodes, node_list)
-               msm8974_icc_aggregate(n, 0, n->avg_bw, n->peak_bw,
-                                     &agg_avg, &agg_peak);
+               provider->aggregate(n, 0, n->avg_bw, n->peak_bw,
+                                   &agg_avg, &agg_peak);
 
        sum_bw = icc_units_to_bps(agg_avg);
        max_peak_bw = icc_units_to_bps(agg_peak);
@@ -694,7 +685,7 @@ static int msm8974_icc_probe(struct platform_device *pdev)
        INIT_LIST_HEAD(&provider->nodes);
        provider->dev = dev;
        provider->set = msm8974_icc_set;
-       provider->aggregate = msm8974_icc_aggregate;
+       provider->aggregate = icc_std_aggregate;
        provider->xlate = of_icc_xlate_onecell;
        provider->data = data;
 
index c8eb1276cce885be1cbe6bf4795ccae7cd31aa76..d4769a5ea182ef54b1661e6b611e5fea289c7d5e 100644 (file)
@@ -327,15 +327,6 @@ static struct qcom_icc_desc qcs404_snoc = {
        .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)
 {
        struct qcom_icc_provider *qp;
@@ -354,8 +345,8 @@ static int qcom_icc_set(struct icc_node *src, struct icc_node *dst)
        qp = to_qcom_provider(provider);
 
        list_for_each_entry(n, &provider->nodes, node_list)
-               qcom_icc_aggregate(n, 0, n->avg_bw, n->peak_bw,
-                                  &agg_avg, &agg_peak);
+               provider->aggregate(n, 0, n->avg_bw, n->peak_bw,
+                                   &agg_avg, &agg_peak);
 
        sum_bw = icc_units_to_bps(agg_avg);
        max_peak_bw = icc_units_to_bps(agg_peak);
@@ -456,7 +447,7 @@ static int qnoc_probe(struct platform_device *pdev)
        INIT_LIST_HEAD(&provider->nodes);
        provider->dev = dev;
        provider->set = qcom_icc_set;
-       provider->aggregate = qcom_icc_aggregate;
+       provider->aggregate = icc_std_aggregate;
        provider->xlate = of_icc_xlate_onecell;
        provider->data = data;