ANDROID: Add vendor hook for the sugov_get_util

android_vh_sugov_get_util:
    To get vendor-specific cpu util.

Bug: 210789284
Test: build pass

Signed-off-by: Xuewen Yan <xuewen.yan@unisoc.com>
Change-Id: Id755c88a15064593280f3e568e1eaabdca9f4dd7
This commit is contained in:
Xuewen Yan
2021-12-14 13:48:31 +08:00
committed by Todd Kjos
parent 45f8132b6d
commit 0975fd934e
3 changed files with 10 additions and 0 deletions

View File

@@ -189,6 +189,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_dump_buffer);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_allow_domain_state);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_map_util_freq);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_update_next_freq);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sugov_get_util);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_report_bug);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_em_cpu_energy);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpu_up);

View File

@@ -241,6 +241,10 @@ DECLARE_HOOK(android_vh_update_next_freq,
unsigned int *new_next_freq, s64 delta_ns),
TP_ARGS(policy, old_next_freq, new_next_freq, delta_ns));
DECLARE_HOOK(android_vh_sugov_get_util,
TP_PROTO(unsigned int cpu, unsigned long *ret),
TP_ARGS(cpu, ret));
struct em_perf_domain;
DECLARE_HOOK(android_vh_em_cpu_energy,
TP_PROTO(struct em_perf_domain *pd,

View File

@@ -294,6 +294,11 @@ static unsigned long sugov_get_util(struct sugov_cpu *sg_cpu)
struct rq *rq = cpu_rq(sg_cpu->cpu);
unsigned long util = cpu_util_cfs(rq);
unsigned long max = arch_scale_cpu_capacity(sg_cpu->cpu);
unsigned long ret = 0;
trace_android_vh_sugov_get_util(sg_cpu->cpu, &ret);
if (ret)
return ret;
sg_cpu->max = max;
sg_cpu->bw_dl = cpu_bw_dl(rq);