lkml.org 
[lkml]   [2022]   [Nov]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v2 04/10] interconnect: qcom: osm-l3: Simplify osm_l3_set()
From


On 11/11/22 08:55, Bjorn Andersson wrote:
> The aggregation over votes for all nodes in the provider will always
> only find the bandwidth votes for the destination side of the path.
> Further more, the average kBps value will always be 0.
>
> Simplify the logic by directly looking at the destination node's peak
> bandwidth request.
>
> Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
> Tested-by: Steev Klimaszewski <steev@kali.org>

Reviewed-by: Sibi Sankar <quic_sibis@quicinc.com>

> ---
>
> Changes since v1:
> - None
>
> drivers/interconnect/qcom/osm-l3.c | 10 +---------
> 1 file changed, 1 insertion(+), 9 deletions(-)
>
> diff --git a/drivers/interconnect/qcom/osm-l3.c b/drivers/interconnect/qcom/osm-l3.c
> index 469be732a00b..5fa171087425 100644
> --- a/drivers/interconnect/qcom/osm-l3.c
> +++ b/drivers/interconnect/qcom/osm-l3.c
> @@ -134,22 +134,14 @@ static int qcom_osm_l3_set(struct icc_node *src, struct icc_node *dst)
> struct qcom_osm_l3_icc_provider *qp;
> struct icc_provider *provider;
> const struct qcom_osm_l3_node *qn;
> - struct icc_node *n;
> unsigned int index;
> - u32 agg_peak = 0;
> - u32 agg_avg = 0;
> u64 rate;
>
> qn = src->data;
> provider = src->provider;
> qp = to_osm_l3_provider(provider);
>
> - list_for_each_entry(n, &provider->nodes, node_list)
> - provider->aggregate(n, 0, n->avg_bw, n->peak_bw,
> - &agg_avg, &agg_peak);
> -
> - rate = max(agg_avg, agg_peak);
> - rate = icc_units_to_bps(rate);
> + rate = icc_units_to_bps(dst->peak_bw);
> do_div(rate, qn->buswidth);
>
> for (index = 0; index < qp->max_state - 1; index++) {

\
 
 \ /
  Last update: 2022-11-11 11:27    [W:0.117 / U:0.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site