diff --git a/battery_mitigation/battery_mitigation.cpp b/battery_mitigation/battery_mitigation.cpp
index 2fa6721..70e8188 100644
--- a/battery_mitigation/battery_mitigation.cpp
+++ b/battery_mitigation/battery_mitigation.cpp
@@ -67,7 +67,7 @@
 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 @@
                                                                  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();
diff --git a/battery_mitigation/sepolicy/battery_mitigation.te b/battery_mitigation/sepolicy/battery_mitigation.te
index 5fecbcb..bcc2a0e 100644
--- a/battery_mitigation/sepolicy/battery_mitigation.te
+++ b/battery_mitigation/sepolicy/battery_mitigation.te
@@ -2,6 +2,7 @@
 type battery_mitigation_exec, exec_type, vendor_file_type, file_type;
 init_daemon_domain(battery_mitigation)
 get_prop(battery_mitigation, boot_status_prop)
+get_prop(battery_mitigation, vendor_brownout_reason_prop)
 set_prop(battery_mitigation, vendor_mitigation_ready_prop)
 
 hal_client_domain(battery_mitigation, hal_thermal);
