diff --git a/procedures/common/cfam_reset.cpp b/procedures/common/cfam_reset.cpp
new file mode 100644
index 0000000..5558374
--- /dev/null
+++ b/procedures/common/cfam_reset.cpp
@@ -0,0 +1,51 @@
+#include <unistd.h>
+
+#include <chrono>
+#include <gpiod.hpp>
+#include <phosphor-logging/log.hpp>
+#include <registration.hpp>
+#include <system_error>
+#include <thread>
+
+namespace openpower
+{
+namespace misc
+{
+
+using namespace phosphor::logging;
+
+/**
+ * @brief Reset the CFAM using the appropriate GPIO
+ * @return void
+ */
+void cfamReset()
+{
+    const std::string cfamReset = {"cfam-reset"};
+    auto line = gpiod::find_line(cfamReset);
+    if (!line)
+    {
+        log<level::ERR>("failed to find cfam-reset line");
+        throw std::system_error(ENODEV, std::system_category());
+    }
+
+    // Configure this app to own the gpio while doing the reset
+    gpiod::line_request conf;
+    conf.consumer = "cfamReset";
+    conf.request_type = gpiod::line_request::DIRECTION_OUTPUT;
+    line.request(conf);
+
+    // Put chips into reset
+    line.set_value(0);
+
+    // Sleep one second to ensure reset processed
+    using namespace std::chrono_literals;
+    std::this_thread::sleep_for(1s);
+
+    // Take chips out of reset
+    line.set_value(1);
+}
+
+REGISTER_PROCEDURE("cfamReset", cfamReset);
+
+} // namespace misc
+} // namespace openpower
