From 2a2ebf1d7821043df29240d08ea639a2f6b89d2a Mon Sep 17 00:00:00 2001 From: George Lee Date: Thu, 1 Dec 2022 16:14:35 -0800 Subject: [PATCH 1/2] Battery Mitigation: Use Brownout Reason Brownout Reason replaces startup_bugreport_requested. Battery Mitigation needs to be updated. Bug: 237287659 Test: Ensure lastmeal.txt is properly generated. Merged-In: If80954497a75da0d41c8d75126e42eaae1330003 Change-Id: Ie06da78b7b9435d134c99627de53d6292def58b1 Signed-off-by: George Lee --- battery_mitigation/battery_mitigation.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/battery_mitigation/battery_mitigation.cpp b/battery_mitigation/battery_mitigation.cpp index 2fa67213..70e8188d 100644 --- a/battery_mitigation/battery_mitigation.cpp +++ b/battery_mitigation/battery_mitigation.cpp @@ -67,7 +67,7 @@ const struct MitigationConfig::Config cfg = { const char kReadyFilePath[] = "/sys/devices/virtual/pmic/mitigation/instruction/ready"; const char kReadyProperty[] = "vendor.brownout.mitigation.ready"; const char kLastMealPath[] = "/data/vendor/mitigation/lastmeal.txt"; -const char kBRRequestedProperty[] = "vendor.startup_bugreport_requested"; +const char kBRRequestedProperty[] = "vendor.brownout_reason"; const std::regex kTimestampRegex("^\\S+\\s[0-9]+:[0-9]+:[0-9]+\\S+$"); int main(int /*argc*/, char ** /*argv*/) { @@ -80,8 +80,8 @@ int main(int /*argc*/, char ** /*argv*/) { cfg.LogFilePath, cfg.TimestampFormat, kTimestampRegex); - int startupBugreport = android::base::GetIntProperty(kBRRequestedProperty, 0); - if (startupBugreport && mitigationLogTimeValid) { + std::string reason = android::base::GetProperty(kBRRequestedProperty, ""); + if (!reason.empty() && mitigationLogTimeValid) { std::ifstream src(cfg.LogFilePath, std::ios::in); std::ofstream dst(kLastMealPath, std::ios::out); dst << src.rdbuf(); From d0586cdd4bda30b07ef845f39ad091e688d11234 Mon Sep 17 00:00:00 2001 From: George Lee Date: Fri, 2 Dec 2022 10:05:07 -0800 Subject: [PATCH 2/2] Enable BrownoutDetection only for debug build Bug: 237287659 Test: Confirm its only debug build only has BrownoutDetection app Merged-In: If80954497a75da0d41c8d75126e42eaae1330003 Change-Id: Ibc1102f779007692d41a423a30075f745129ea1b Signed-off-by: George Lee --- device.mk | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/device.mk b/device.mk index 05aa9d22..e25647e5 100644 --- a/device.mk +++ b/device.mk @@ -551,8 +551,12 @@ PRODUCT_PACKAGES += \ # Battery Mitigation PRODUCT_PACKAGES += \ - battery_mitigation \ - BrownoutDetection + battery_mitigation + + +ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) +PRODUCT_PACKAGES += BrownoutDetection +endif PRODUCT_PACKAGES_DEBUG += \ sg_write_buffer \