From 08bf55a6b266f9046dca73c45a60809834c5492d Mon Sep 17 00:00:00 2001 From: Michael Bestas Date: Wed, 6 Sep 2017 01:30:19 +0300 Subject: msm8996-common: init: Check if power off alarm is set Check if power off alarm is set, then set alarm's properties Adapted from Mao Jinlong patch in init.qcom.early_boot.sh Change-Id: Ib86584d1c09aba07c47435ac8bed39aac79a80f7 Signed-off-by: Davide Garberi --- init/init_msm8996.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'init') diff --git a/init/init_msm8996.cpp b/init/init_msm8996.cpp index 11bf5e4..5b3fa46 100644 --- a/init/init_msm8996.cpp +++ b/init/init_msm8996.cpp @@ -47,10 +47,13 @@ char const *heapmaxfree; static void init_alarm_boot_properties() { char const *boot_reason_file = "/proc/sys/kernel/boot_reason"; + char const *power_off_alarm_file = "/persist/alarm/powerOffAlarmSet"; std::string boot_reason; + std::string power_off_alarm; std::string reboot_reason = property_get("ro.boot.alarmboot"); - if (read_file(boot_reason_file, &boot_reason)) { + if (read_file(boot_reason_file, &boot_reason) + && read_file(power_off_alarm_file, &power_off_alarm)) { /* * Setup ro.alarm_boot value to true when it is RTC triggered boot up * For existing PMIC chips, the following mapping applies @@ -66,7 +69,8 @@ static void init_alarm_boot_properties() * 7 -> CBLPWR_N pin toggled (for external power supply) * 8 -> KPDPWR_N pin toggled (power key pressed) */ - if (Trim(boot_reason) == "3" || reboot_reason == "true") { + if ((Trim(boot_reason) == "3" || reboot_reason == "true") + && Trim(power_off_alarm) == "1") { property_set("ro.alarm_boot", "true"); } else { property_set("ro.alarm_boot", "false"); -- cgit v1.2.3