diff --git a/services/core/java/com/android/server/cpu/CpuInfoReader.java b/services/core/java/com/android/server/cpu/CpuInfoReader.java index 680829d2bfc30..b13d7533f29bb 100644 --- a/services/core/java/com/android/server/cpu/CpuInfoReader.java +++ b/services/core/java/com/android/server/cpu/CpuInfoReader.java @@ -20,6 +20,7 @@ import android.annotation.IntDef; import android.annotation.Nullable; import android.system.Os; import android.system.OsConstants; +import android.util.ArrayMap; import android.util.SparseArray; import android.util.SparseIntArray; @@ -46,8 +47,12 @@ public final class CpuInfoReader { private static final String CPUFREQ_DIR_PATH = "/sys/devices/system/cpu/cpufreq"; private static final String POLICY_DIR_PREFIX = "policy"; private static final String RELATED_CPUS_FILE = "related_cpus"; + private static final String AFFECTED_CPUS_FILE = "affected_cpus"; + private static final String CUR_CPUFREQ_FILE = "cpuinfo_cur_freq"; private static final String MAX_CPUFREQ_FILE = "cpuinfo_max_freq"; + private static final String CUR_SCALING_FREQ_FILE = "scaling_cur_freq"; private static final String MAX_SCALING_FREQ_FILE = "scaling_max_freq"; + private static final String TIME_IN_STATE_FILE = "stats/time_in_state"; private static final String CPUSET_DIR_PATH = "/dev/cpuset"; private static final String CPUSET_TOP_APP_DIR = "top-app"; private static final String CPUSET_BACKGROUND_DIR = "background"; @@ -60,6 +65,8 @@ public final class CpuInfoReader { + "(?[0-9]+)\\s(?[0-9]+)\\s" + "(?[0-9]+)\\s(?[0-9]+)\\s" + "(?[0-9]+)"); + private static final Pattern TIME_IN_STATE_PATTERN = + Pattern.compile("(?[0-9]+)\\s(?