diff --git a/activation.cpp b/activation.cpp
index 4f2706d..0a455c3 100755
--- a/activation.cpp
+++ b/activation.cpp
@@ -1,4 +1,5 @@
 #include "activation.hpp"
+#include "config.h"
 
 namespace openpower
 {
@@ -32,6 +33,23 @@
 auto Activation::requestedActivation(RequestedActivations value) ->
         RequestedActivations
 {
+    if ((value == softwareServer::Activation::RequestedActivations::Active) &&
+        (softwareServer::Activation::requestedActivation() !=
+                  softwareServer::Activation::RequestedActivations::Active))
+    {
+        constexpr auto ubimountService = "obmc-flash-bios-ubimount@";
+        auto ubimountServiceFile = std::string(ubimountService) +
+                                   versionId +
+                                   ".service";
+        auto method = bus.new_method_call(
+                SYSTEMD_BUSNAME,
+                SYSTEMD_PATH,
+                SYSTEMD_INTERFACE,
+                "StartUnit");
+        method.append(ubimountServiceFile,
+                      "replace");
+        bus.call_noreply(method);
+    }
     return softwareServer::Activation::requestedActivation(value);
 }
 
diff --git a/configure.ac b/configure.ac
index 5253703..c0ba7b4 100755
--- a/configure.ac
+++ b/configure.ac
@@ -78,6 +78,13 @@
 AC_DEFINE(MAPPER_INTERFACE, "xyz.openbmc_project.ObjectMapper",
     [The object mapper interface.])
 
+AC_DEFINE(SYSTEMD_BUSNAME, "org.freedesktop.systemd1",
+    [systemd busname.])
+AC_DEFINE(SYSTEMD_PATH, "/org/freedesktop/systemd1",
+    [systemd path.])
+AC_DEFINE(SYSTEMD_INTERFACE, "org.freedesktop.systemd1.Manager",
+    [systemd interface.])
+
 AC_CONFIG_FILES([Makefile test/Makefile])
 AC_OUTPUT
 
