From 4c9c90a5ade4c25aa60e2f5434b60b1a58c5cf4f Mon Sep 17 00:00:00 2001 From: Darren Hsu Date: Fri, 26 Jan 2024 16:38:52 +0800 Subject: [PATCH 1/5] powerstats: use display MRR state residency data provider Bug: 322453302 Test: vts-tradefed run vts -m VtsHalPowerStatsTargetTest Change-Id: I78ddca8aa7f4994157845545d01d6325dd09d5ed Signed-off-by: Darren Hsu --- powerstats/cheetah/service.cpp | 43 ++++++++++++++++++++-------------- powerstats/panther/service.cpp | 29 ++++++++++++++--------- 2 files changed, 43 insertions(+), 29 deletions(-) diff --git a/powerstats/cheetah/service.cpp b/powerstats/cheetah/service.cpp index fa16eb1..2f18abb 100644 --- a/powerstats/cheetah/service.cpp +++ b/powerstats/cheetah/service.cpp @@ -36,25 +36,32 @@ using aidl::android::hardware::power::stats::PowerStatsEnergyConsumer; void addDisplay(std::shared_ptr p) { // Add display residency stats - std::vector states = { - "Off", - "LP: 1440x3120@30", - "On: 1440x3120@10", - "On: 1440x3120@60", - "On: 1440x3120@120", - "HBM: 1440x3120@60", - "HBM: 1440x3120@120", - "LP: 1080x2340@30", - "On: 1080x2340@10", - "On: 1080x2340@60", - "On: 1080x2340@120", - "HBM: 1080x2340@60", - "HBM: 1080x2340@120"}; + struct stat buffer; + if (!stat("/sys/class/drm/card0/device/primary-panel/time_in_state", &buffer)) { + // time_in_state exists + addDisplayMrr(p); + } else { + // time_in_state doesn't exist + std::vector states = { + "Off", + "LP: 1440x3120@30", + "On: 1440x3120@10", + "On: 1440x3120@60", + "On: 1440x3120@120", + "HBM: 1440x3120@60", + "HBM: 1440x3120@120", + "LP: 1080x2340@30", + "On: 1080x2340@10", + "On: 1080x2340@60", + "On: 1080x2340@120", + "HBM: 1080x2340@60", + "HBM: 1080x2340@120"}; - p->addStateResidencyDataProvider(std::make_unique( - "Display", - "/sys/class/backlight/panel0-backlight/state", - states)); + p->addStateResidencyDataProvider(std::make_unique( + "Display", + "/sys/class/backlight/panel0-backlight/state", + states)); + } // Add display energy consumer p->addEnergyConsumer(PowerStatsEnergyConsumer::createMeterAndEntityConsumer( diff --git a/powerstats/panther/service.cpp b/powerstats/panther/service.cpp index 036faa4..b2861b6 100644 --- a/powerstats/panther/service.cpp +++ b/powerstats/panther/service.cpp @@ -34,18 +34,25 @@ using aidl::android::hardware::power::stats::PowerStatsEnergyConsumer; void addDisplay(std::shared_ptr p) { // Add display residency stats - std::vector states = { - "Off", - "LP: 1080x2400@30", - "On: 1080x2400@60", - "On: 1080x2400@90", - "HBM: 1080x2400@60", - "HBM: 1080x2400@90"}; + struct stat buffer; + if (!stat("/sys/class/drm/card0/device/primary-panel/time_in_state", &buffer)) { + // time_in_state exists + addDisplayMrr(p); + } else { + // time_in_state doesn't exist + std::vector states = { + "Off", + "LP: 1080x2400@30", + "On: 1080x2400@60", + "On: 1080x2400@90", + "HBM: 1080x2400@60", + "HBM: 1080x2400@90"}; - p->addStateResidencyDataProvider(std::make_unique( - "Display", - "/sys/class/backlight/panel0-backlight/state", - states)); + p->addStateResidencyDataProvider(std::make_unique( + "Display", + "/sys/class/backlight/panel0-backlight/state", + states)); + } // Add display energy consumer p->addEnergyConsumer(PowerStatsEnergyConsumer::createMeterAndEntityConsumer( From a478a7eca821ec66c1cdff2388e330ecdc0e1062 Mon Sep 17 00:00:00 2001 From: Ankur Bakshi Date: Wed, 10 Jan 2024 05:44:36 +0000 Subject: [PATCH 2/5] Update cheetah SVN to 47 Bug: 313797924 Change-Id: I136009c29c9ed3c1ef771024442cc02709cbd5aa --- device-cheetah.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device-cheetah.mk b/device-cheetah.mk index 1dddd89..1d33c4c 100644 --- a/device-cheetah.mk +++ b/device-cheetah.mk @@ -303,7 +303,7 @@ PRODUCT_VENDOR_PROPERTIES += \ # Increment the SVN for any official public releases PRODUCT_VENDOR_PROPERTIES += \ - ro.vendor.build.svn=46 + ro.vendor.build.svn=47 # DCK properties based on target PRODUCT_PROPERTY_OVERRIDES += \ From 7399ea785bbf089cf7d210c447a8ce24a450d8a8 Mon Sep 17 00:00:00 2001 From: Ankur Bakshi Date: Fri, 26 Jan 2024 22:36:29 +0000 Subject: [PATCH 3/5] Update cheetah SVN to 48 Bug: 313797924 Change-Id: Ifb77fb17ffed3f36b6920270e9bc6219b4c6ac71 --- device-cheetah.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device-cheetah.mk b/device-cheetah.mk index 1d33c4c..7d5623d 100644 --- a/device-cheetah.mk +++ b/device-cheetah.mk @@ -303,7 +303,7 @@ PRODUCT_VENDOR_PROPERTIES += \ # Increment the SVN for any official public releases PRODUCT_VENDOR_PROPERTIES += \ - ro.vendor.build.svn=47 + ro.vendor.build.svn=48 # DCK properties based on target PRODUCT_PROPERTY_OVERRIDES += \ From deb1bfb51575129c29d5577745fcd37827e4c6d7 Mon Sep 17 00:00:00 2001 From: Ankur Bakshi Date: Wed, 10 Jan 2024 05:39:12 +0000 Subject: [PATCH 4/5] Update panther SVN to 47 Bug: 313797924 Change-Id: If876336aa39cc1971f66605480aa3ee4d8e7b19d --- device-panther.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device-panther.mk b/device-panther.mk index 8696cda..24ceef2 100644 --- a/device-panther.mk +++ b/device-panther.mk @@ -288,7 +288,7 @@ PRODUCT_VENDOR_PROPERTIES += \ # Increment the SVN for any official public releases PRODUCT_VENDOR_PROPERTIES += \ - ro.vendor.build.svn=46 + ro.vendor.build.svn=47 # DCK properties based on target PRODUCT_PROPERTY_OVERRIDES += \ From 025917831e7cea500f57f2362bba4405cf637d08 Mon Sep 17 00:00:00 2001 From: Ankur Bakshi Date: Fri, 26 Jan 2024 22:31:15 +0000 Subject: [PATCH 5/5] Update panther SVN to 48 Bug: 313797924 Change-Id: I1bb1f22f83e1a83f96ef482f84446b641e6a0ee1 --- device-panther.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/device-panther.mk b/device-panther.mk index 24ceef2..d1eb719 100644 --- a/device-panther.mk +++ b/device-panther.mk @@ -288,7 +288,7 @@ PRODUCT_VENDOR_PROPERTIES += \ # Increment the SVN for any official public releases PRODUCT_VENDOR_PROPERTIES += \ - ro.vendor.build.svn=47 + ro.vendor.build.svn=48 # DCK properties based on target PRODUCT_PROPERTY_OVERRIDES += \