summaryrefslogtreecommitdiff
path: root/powerstats
diff options
context:
space:
mode:
authorDarren Hsu <darrenhsu@google.com>2022-07-28 10:07:29 +0800
committerTreeHugger Robot <treehugger-gerrit@google.com>2022-07-29 03:34:51 +0000
commit46a0ab601839c3b56f0d4ecbbe3d15d9e2166d66 (patch)
treedf58ed6962d533d24538ce13e2e5f60ca1a7fccd /powerstats
parent53dc3e39a696e8edecaf96b11f5728deb895c778 (diff)
downloadgs201-46a0ab601839c3b56f0d4ecbbe3d15d9e2166d66.tar.gz
powerstats: include WLAN data provider in PowerStatsHAL
The specific device uses QC solution on wifi. Include WLAN state residency data provider in PowerStatsHAL for the device. Bug: 231397821 Test: dumpsys android.hardware.power.stats.IPowerStats/default Change-Id: I268dd007c9998c9453107a7ff9507203aee0f87c Signed-off-by: Darren Hsu <darrenhsu@google.com>
Diffstat (limited to 'powerstats')
-rw-r--r--powerstats/Gs201CommonDataProviders.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/powerstats/Gs201CommonDataProviders.cpp b/powerstats/Gs201CommonDataProviders.cpp
index 35e405d..aca40b1 100644
--- a/powerstats/Gs201CommonDataProviders.cpp
+++ b/powerstats/Gs201CommonDataProviders.cpp
@@ -25,6 +25,7 @@
#include <dataproviders/PowerStatsEnergyConsumer.h>
#include <dataproviders/PowerStatsEnergyAttribution.h>
#include <dataproviders/PixelStateResidencyDataProvider.h>
+#include <dataproviders/WlanStateResidencyDataProvider.h>
#include <android-base/logging.h>
#include <android-base/properties.h>
@@ -41,6 +42,7 @@ using aidl::android::hardware::power::stats::GenericStateResidencyDataProvider;
using aidl::android::hardware::power::stats::IioEnergyMeterDataProvider;
using aidl::android::hardware::power::stats::PixelStateResidencyDataProvider;
using aidl::android::hardware::power::stats::PowerStatsEnergyConsumer;
+using aidl::android::hardware::power::stats::WlanStateResidencyDataProvider;
// TODO (b/181070764) (b/182941084):
// Remove this when Wifi/BT energy consumption models are available or revert before ship
@@ -528,6 +530,12 @@ void addWifi(std::shared_ptr<PowerStats> p) {
cfgs));
}
+void addWlan(std::shared_ptr<PowerStats> p) {
+ p->addStateResidencyDataProvider(std::make_unique<WlanStateResidencyDataProvider>(
+ "WLAN",
+ "/sys/kernel/wifi/power_stats"));
+}
+
void addUfs(std::shared_ptr<PowerStats> p) {
p->addStateResidencyDataProvider(std::make_unique<UfsStateResidencyDataProvider>("/sys/bus/platform/devices/14700000.ufs/ufs_stats/"));
}
@@ -643,7 +651,6 @@ void addCommonDataProviders(std::shared_ptr<PowerStats> p) {
addMobileRadio(p);
addGNSS(p);
addPCIe(p);
- addWifi(p);
addUfs(p);
addPowerDomains(p);
addDevfreq(p);
@@ -657,10 +664,12 @@ void addCommonDataProviders(std::shared_ptr<PowerStats> p) {
void addGs201CommonDataProviders(std::shared_ptr<PowerStats> p) {
addCommonDataProviders(p);
addPixelStateResidencyDataProvider(p);
+ addWifi(p);
}
void addGs201CommonDataProvidersQc(std::shared_ptr<PowerStats> p) {
addCommonDataProviders(p);
+ addWlan(p);
}
void addNFC(std::shared_ptr<PowerStats> p, const std::string& path) {