From f5f7a90578ff6cdc6e1ac0c4aa6fc279f40d8ad9 Mon Sep 17 00:00:00 2001 From: Darren Hsu Date: Mon, 19 Feb 2024 16:29:19 +0800 Subject: [PATCH] powerstats: add GNSS power stats for ZP devices Bug: 309876364 Test: dumpsys android.hardware.power.stats.IPowerStats/default Change-Id: I22cefaf0762e0c125ad4a1b6c0f0b11847df44a3 Signed-off-by: Darren Hsu --- powerstats/ZumaProCommonDataProviders.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/powerstats/ZumaProCommonDataProviders.cpp b/powerstats/ZumaProCommonDataProviders.cpp index 1d00a99..31c3b37 100644 --- a/powerstats/ZumaProCommonDataProviders.cpp +++ b/powerstats/ZumaProCommonDataProviders.cpp @@ -427,9 +427,12 @@ void addGNSS(std::shared_ptr p) .lastEntryTransform = gnssUsToMs, }; + // External GNSS power stats are controlled by GPS chip side. The power stats + // would not update while GPS chip is down. This means that GPS OFF state + // residency won't reflect the elapsed off time. So only GPS ON state + // residency is present. const std::vector> gnssStateHeaders = { std::make_pair("ON", "GPS_ON:"), - std::make_pair("OFF", "GPS_OFF:"), }; std::vector cfgs; @@ -437,10 +440,7 @@ void addGNSS(std::shared_ptr p) "GPS", ""); p->addStateResidencyDataProvider(std::make_unique( - "/dev/bbd_pwrstat", cfgs)); - - p->addEnergyConsumer(PowerStatsEnergyConsumer::createMeterConsumer(p, - EnergyConsumerType::GNSS, "GPS", {"L9S_GNSS_CORE"})); + "/data/vendor/gps/power_stats", cfgs)); } void addPCIe(std::shared_ptr p) {