17fc623e0f
Up until now, we've been aggregating the bandwidth values and only
dividing them by the bus width of the source node. This was completely
wrong, as different nodes on a given path may (and usually do) have
varying bus widths. That in turn, resulted in the calculated clock rates
being completely bogus - usually they ended up being much higher, as
NoC_A<->NoC_B links are very wide.
Since we're not using the aggregate bandwidth value for anything other
than clock rate calculations, remodel qcom_icc_bus_aggregate() to
calculate the per-context clock rate for a given provider, taking into
account the bus width of every individual node.
Fixes:
|
||
---|---|---|
.. | ||
imx | ||
qcom | ||
samsung | ||
Kconfig | ||
Makefile | ||
bulk.c | ||
core.c | ||
icc-clk.c | ||
internal.h | ||
trace.h |