target: msm8974: Add an api for device shutdown.
CRs-Fixed: 458185
Change-Id: Iad0dc234dbbd2bb1471d1f630dfc8aee57d1808b
diff --git a/target/msm8974/init.c b/target/msm8974/init.c
index f2bdc68..c4dc69d 100644
--- a/target/msm8974/init.c
+++ b/target/msm8974/init.c
@@ -411,3 +411,22 @@
clock_ce_disable(SSD_CE_INSTANCE_1);
#endif
}
+
+void shutdown_device()
+{
+ dprintf(CRITICAL, "Going down for shutdown.\n");
+
+ /* Configure PMIC for shutdown. */
+ if (pmic_ver == PMIC_VERSION_V2)
+ pm8x41_v2_reset_configure(PON_PSHOLD_SHUTDOWN);
+ else
+ pm8x41_reset_configure(PON_PSHOLD_SHUTDOWN);
+
+ /* Drop PS_HOLD for MSM */
+ writel(0x00, MPM2_MPM_PS_HOLD);
+
+ mdelay(5000);
+
+ dprintf(CRITICAL, "Shutdown failed\n");
+
+}