powerstats: set time limit as timeout for AoC
Bug: 219630658
Test: dumpsys android.hardware.power.stats.IPowerStats/default
Change-Id: I5b290a53dcd5325aa55fd95a42c1af95066f550c
Signed-off-by: Darren Hsu <darrenhsu@google.com>
diff --git a/powerstats/Gs101CommonDataProviders.cpp b/powerstats/Gs101CommonDataProviders.cpp
index 13e6b71..124177c 100644
--- a/powerstats/Gs101CommonDataProviders.cpp
+++ b/powerstats/Gs101CommonDataProviders.cpp
@@ -45,6 +45,7 @@
constexpr char kBootHwSoCRev[] = "ro.boot.hw.soc.rev";
void addAoC(std::shared_ptr<PowerStats> p) {
+ static const uint64_t TIMEOUT_MILLIS = 120;
std::string prefix = "/sys/devices/platform/19000000.aoc/control/";
// Add AoC cores (a32, ff1, hf0, and hf1)
@@ -57,7 +58,7 @@
std::vector<std::pair<std::string, std::string>> coreStates = {
{"DWN", "off"}, {"RET", "retention"}, {"WFI", "wfi"}};
p->addStateResidencyDataProvider(std::make_unique<AocStateResidencyDataProvider>(coreIds,
- coreStates));
+ coreStates, TIMEOUT_MILLIS));
// Add AoC voltage stats
std::vector<std::pair<std::string, std::string>> voltageIds = {
@@ -68,7 +69,8 @@
{"UUD", "ultra_underdrive"},
{"UD", "underdrive"}};
p->addStateResidencyDataProvider(
- std::make_unique<AocStateResidencyDataProvider>(voltageIds, voltageStates));
+ std::make_unique<AocStateResidencyDataProvider>(voltageIds, voltageStates,
+ TIMEOUT_MILLIS));
// Add AoC monitor mode
std::vector<std::pair<std::string, std::string>> monitorIds = {
@@ -78,7 +80,8 @@
{"MON", "mode"},
};
p->addStateResidencyDataProvider(
- std::make_unique<AocStateResidencyDataProvider>(monitorIds, monitorStates));
+ std::make_unique<AocStateResidencyDataProvider>(monitorIds, monitorStates,
+ TIMEOUT_MILLIS));
// Add AoC restart count
const GenericStateResidencyDataProvider::StateResidencyConfig restartCountConfig = {