Merge stab branch on top of dev brnch

Change-Id: Ib4aec4e8527829edfb38535414acfa4180ccf5ca
CRs-Fixed: 988658
diff --git a/app/aboot/aboot.c b/app/aboot/aboot.c
index a51d3eb..5f1b5ff 100644
--- a/app/aboot/aboot.c
+++ b/app/aboot/aboot.c
@@ -757,6 +757,22 @@
 	free(final_cmdline);
 
 #if VERIFIED_BOOT
+#if !VBOOT_MOTA
+	if (device.verity_mode == 0) {
+#if FBCON_DISPLAY_MSG
+		display_bootverify_menu(DISPLAY_MENU_LOGGING);
+		wait_for_users_action();
+#else
+		dprintf(CRITICAL,
+			"The dm-verity is not started in enforcing mode.\nWait for 5 seconds before proceeding\n");
+		mdelay(5000);
+#endif
+	}
+
+#endif
+#endif
+
+#if VERIFIED_BOOT
 	/* Write protect the device info */
 	if (!boot_into_recovery && target_build_variant_user() && devinfo_present && mmc_write_protect("devinfo", 1))
 	{
diff --git a/platform/msm_shared/display_menu.c b/platform/msm_shared/display_menu.c
index 8daef15..c955e1b 100644
--- a/platform/msm_shared/display_menu.c
+++ b/platform/msm_shared/display_menu.c
@@ -64,6 +64,9 @@
 #define RED_WARNING_MSG	"Your device has failed verification and may "\
 				"not work properly\n\nTo learn more, visit:\n"
 
+#define LOGGING_WARNING_MSG	"The dm-verity is not started in enforcing mode and may "\
+				"not work properly\n\nTo learn more, visit:\n"
+
 static bool is_thread_start = false;
 static struct select_msg_info msg_info;
 
@@ -76,7 +79,8 @@
 struct boot_verify_info boot_verify_info[] = {
 			[DISPLAY_MENU_RED] = {FBCON_RED_MSG, RED_WARNING_MSG},
 			[DISPLAY_MENU_YELLOW] = {FBCON_YELLOW_MSG, YELLOW_WARNING_MSG},
-			[DISPLAY_MENU_ORANGE] = {FBCON_ORANGE_MSG, ORANGE_WARNING_MSG}};
+			[DISPLAY_MENU_ORANGE] = {FBCON_ORANGE_MSG, ORANGE_WARNING_MSG},
+			[DISPLAY_MENU_LOGGING] = {FBCON_RED_MSG, LOGGING_WARNING_MSG}};
 #endif
 
 static char *verify_option_menu[] = {
diff --git a/platform/msm_shared/include/display_menu.h b/platform/msm_shared/include/display_menu.h
index 432e649..b757916 100644
--- a/platform/msm_shared/include/display_menu.h
+++ b/platform/msm_shared/include/display_menu.h
@@ -42,6 +42,7 @@
 	DISPLAY_MENU_UNLOCK,
 	DISPLAY_MENU_FASTBOOT,
 	DISPLAY_MENU_UNLOCK_CRITICAL,
+	DISPLAY_MENU_LOGGING,
 };
 
 struct menu_info {
diff --git a/platform/msm_shared/menu_keys_detect.c b/platform/msm_shared/menu_keys_detect.c
index 6fb56ab..d3bc107 100644
--- a/platform/msm_shared/menu_keys_detect.c
+++ b/platform/msm_shared/menu_keys_detect.c
@@ -242,6 +242,7 @@
 		case DISPLAY_MENU_YELLOW:
 		case DISPLAY_MENU_ORANGE:
 		case DISPLAY_MENU_RED:
+		case DISPLAY_MENU_LOGGING:
 			reason = CONTINUE;
 			break;
 		case DISPLAY_MENU_MORE_OPTION:
@@ -306,6 +307,11 @@
 		boot_warning_volume_keys_func,
 		power_key_func,
 	},
+	[DISPLAY_MENU_LOGGING] = {
+		boot_warning_volume_keys_func,
+		boot_warning_volume_keys_func,
+		power_key_func,
+	},
 	[DISPLAY_MENU_MORE_OPTION] = {
 		menu_volume_up_func,
 		menu_volume_down_func,
diff --git a/project/msm8953.mk b/project/msm8953.mk
index a26cadf..9787a5a 100644
--- a/project/msm8953.mk
+++ b/project/msm8953.mk
@@ -108,3 +108,6 @@
 ifeq ($(ENABLE_MDTP_SUPPORT),1)
 DEFINES += MDTP_SUPPORT=1
 endif
+
+#enable battery voltage check
+DEFINES += CHECK_BAT_VOLTAGE=1
diff --git a/target/msm8953/rules.mk b/target/msm8953/rules.mk
index 1495f87..93a5661 100644
--- a/target/msm8953/rules.mk
+++ b/target/msm8953/rules.mk
@@ -26,6 +26,7 @@
 	dev/vib \
 	lib/ptable \
 	dev/pmic/pm8x41 \
+	dev/pmic/pmi8994 \
 	dev/qpnp_haptic \
 	lib/libfdt \
 	dev/qpnp_wled \