Use shutdown target to stop the host

The shutdown target will use the soft power off application
which allows the host to properly shut itself down before power
is removed from the chassis

Resolves openbmc/openbmc#1286

Change-Id: I7be630237571847a9fa6c37b0b9a8fddf568e47b
Signed-off-by: Andrew Geissler <andrewg@us.ibm.com>
diff --git a/host_state_manager.cpp b/host_state_manager.cpp
index 6731432..57ea219 100644
--- a/host_state_manager.cpp
+++ b/host_state_manager.cpp
@@ -18,6 +18,10 @@
 
 using namespace phosphor::logging;
 
+// host-shutdown notifies host of shutdown and that path calls host-stop
+// so initiate a host shutdown with the -shutdown target and consider the
+// host shut down when the -stop target is complete
+constexpr auto HOST_STATE_SOFT_POWEROFF_TGT = "obmc-host-shutdown@0.target";
 constexpr auto HOST_STATE_POWEROFF_TGT = "obmc-host-stop@0.target";
 constexpr auto HOST_STATE_POWERON_TGT = "obmc-host-start@0.target";
 constexpr auto HOST_STATE_QUIESCE_TGT = "obmc-host-quiesce@0.target";
@@ -28,7 +32,7 @@
 /* Map a transition to it's systemd target */
 const std::map<server::Host::Transition,std::string> SYSTEMD_TARGET_TABLE =
 {
-        {server::Host::Transition::Off, HOST_STATE_POWEROFF_TGT},
+        {server::Host::Transition::Off, HOST_STATE_SOFT_POWEROFF_TGT},
         {server::Host::Transition::On, HOST_STATE_POWERON_TGT}
 };