diff options
author | Georgi Djakov <georgi.djakov@linaro.org> | 2019-08-09 15:13:24 +0300 |
---|---|---|
committer | Georgi Djakov <georgi.djakov@linaro.org> | 2019-08-13 23:02:48 +0300 |
commit | cbd5a9c28bb5d2560be34fc6a2b6e60197628433 (patch) | |
tree | 1c04f2c9a88b51b68c98e295117e9b9c7fcdae4a /drivers/interconnect | |
parent | 127ab2cc5f19692efe422935267b9db0845b2b04 (diff) |
interconnect: Add pre_aggregate() callback
Introduce an optional callback in interconnect provider drivers. It can be
used for implementing actions, that need to be executed before the actual
aggregation of the bandwidth requests has started.
The benefit of this for now is that it will significantly simplify the code
in provider drivers.
Suggested-by: Evan Green <evgreen@chromium.org>
Reviewed-by: Evan Green <evgreen@chromium.org>
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
Diffstat (limited to 'drivers/interconnect')
-rw-r--r-- | drivers/interconnect/core.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/interconnect/core.c b/drivers/interconnect/core.c index 251354bb7fdc..7b971228df38 100644 --- a/drivers/interconnect/core.c +++ b/drivers/interconnect/core.c @@ -205,6 +205,9 @@ static int aggregate_requests(struct icc_node *node) node->avg_bw = 0; node->peak_bw = 0; + if (p->pre_aggregate) + p->pre_aggregate(node); + hlist_for_each_entry(r, &node->req_list, req_node) p->aggregate(node, r->tag, r->avg_bw, r->peak_bw, &node->avg_bw, &node->peak_bw); |