Hi, Thank you for your comments. On Tue, 2019-08-06 at 13:41 +0000, Leonard Crestez wrote: > On 23.07.2019 15:21, Artur Świgoń wrote: > > > +static int exynos_bus_icc_aggregate(struct icc_node *node, u32 avg_bw, > > + u32 peak_bw, u32 *agg_avg, u32 *agg_peak) > > +{ > > + *agg_peak = *agg_avg = peak_bw; > > + > > + return 0; > > +} > > The only current provider aggregates "avg" with "sum" and "peak" with > "max", any particular reason to do something different? This function > doesn't even really do aggregation, if there is a second request for "0" > then the first request is lost. Yes, you're right. I adopted an oversimplified solution for the purpose of this RFC (please bear in mind that currently only one icc_path is used, so there is no aggregation anyway). > I didn't find any docs but my interpretation of avg/peak is that "avg" > is for constant traffic like a display or VPU pushing pixels and "peak" > is for variable traffic like networking. I assume devices which make > "peak" requests are aggregated with max because they're not expected to > all max-out together. That's correct (according to my understanding). > In PATCH 11 you're making a bandwidth request based on resolution, that > traffic is constant and guaranteed to happend while the display is on so > it would make sense to request it as an "avg" and aggregate it with "sum". > > -- > Regards, > Leonard > -- Artur Świgoń Samsung R&D Institute Poland Samsung Electronics