diff --git a/chassis_state_manager.cpp b/chassis_state_manager.cpp
index 71f9134..2dd57eb 100644
--- a/chassis_state_manager.cpp
+++ b/chassis_state_manager.cpp
@@ -53,8 +53,6 @@
 constexpr auto SYSTEMD_PROPERTY_IFACE = "org.freedesktop.DBus.Properties";
 constexpr auto SYSTEMD_INTERFACE_UNIT = "org.freedesktop.systemd1.Unit";
 
-constexpr auto CHASSIS_ON_FILE = "/run/openbmc/chassis@%d-on";
-
 void Chassis::subscribeToSystemdSignals()
 {
     try
diff --git a/host_reset_recovery.cpp b/host_reset_recovery.cpp
index b965ad8..529e298 100644
--- a/host_reset_recovery.cpp
+++ b/host_reset_recovery.cpp
@@ -1,3 +1,5 @@
+#include "config.h"
+
 #include <unistd.h>
 
 #include <phosphor-logging/elog.hpp>
@@ -8,6 +10,7 @@
 #include <xyz/openbmc_project/Logging/Entry/server.hpp>
 
 #include <cstdlib>
+#include <fstream>
 #include <string>
 
 constexpr auto HOST_STATE_SVC = "xyz.openbmc_project.State.Host";
@@ -97,14 +100,38 @@
     }
 }
 
+// Once CHASSIS_ON_FILE is removed, the obmc-chassis-poweron@.target has
+// completed and the phosphor-chassis-state-manager code has processed it.
+bool isChassisTargetComplete()
+{
+    auto size = std::snprintf(nullptr, 0, CHASSIS_ON_FILE, 0);
+    size++; // null
+    std::unique_ptr<char[]> buf(new char[size]);
+    std::snprintf(buf.get(), size, CHASSIS_ON_FILE, 0);
+
+    std::ifstream f(buf.get());
+    return !f.good();
+}
+
 int main()
 {
 
     auto bus = sdbusplus::bus::new_default();
 
-    // This application will only be started if chassis power is on and the
-    // host is not responding after a BMC reboot.
-    // TODO Wait for chassis power on target to complete
+    // Chassis power is on if this service starts but need to wait for the
+    // obmc-chassis-poweron@.target to complete before potentially initiating
+    // another systemd target transition (i.e. Quiesce->Reboot)
+    while (!isChassisTargetComplete())
+    {
+        log<level::DEBUG>("Waiting for chassis on target to complete");
+        std::this_thread::sleep_for(std::chrono::seconds(1));
+
+        // There is no timeout here, wait until it happens or until system
+        // is powered off and this service is stopped
+    }
+
+    log<level::INFO>("Chassis power on has completed, checking if host is "
+                     "still running after the BMC reboot");
 
     // Check the last BootProgeress to see if the host was booting before
     // the BMC reboot occurred
diff --git a/meson.build b/meson.build
index faec1e1..4944c13 100644
--- a/meson.build
+++ b/meson.build
@@ -47,6 +47,9 @@
 conf.set_quoted(
     'HOST_RUNNING_FILE', '/run/openbmc/host@%d-on')
 
+conf.set_quoted(
+    'CHASSIS_ON_FILE', '/run/openbmc/chassis@%d-on')
+
 configure_file(output: 'config.h', configuration: conf)
 
 if(get_option('warm-reboot').enabled())
