diff --git a/extensions/phal/dump_utils.cpp b/extensions/phal/dump_utils.cpp
index 61bdd92..59f7f67 100644
--- a/extensions/phal/dump_utils.cpp
+++ b/extensions/phal/dump_utils.cpp
@@ -2,13 +2,13 @@
 
 #include "util.hpp"
 
-#include <fmt/format.h>
-
 #include <phosphor-logging/log.hpp>
 #include <sdbusplus/bus.hpp>
 #include <sdbusplus/exception.hpp>
 #include <sdbusplus/server.hpp>
 
+#include <format>
+
 namespace openpower::phal::dump
 {
 
@@ -43,7 +43,7 @@
                                     "OperationStatus.InProgress" != *status))
         {
             // dump is done, trace some info and change in progress flag
-            log<level::INFO>(fmt::format("Dump status({}) : path={}",
+            log<level::INFO>(std::format("Dump status({}) : path={}",
                                          status->c_str(), path.c_str())
                                  .c_str());
             inProgress = false;
@@ -100,7 +100,7 @@
 
 void requestDump(const DumpParameters& dumpParameters)
 {
-    log<level::INFO>(fmt::format("Requesting Dump PEL({}) Index({})",
+    log<level::INFO>(std::format("Requesting Dump PEL({}) Index({})",
                                  dumpParameters.logId, dumpParameters.unitId)
                          .c_str());
 
@@ -142,7 +142,7 @@
     }
     catch (const sdbusplus::exception_t& e)
     {
-        log<level::ERR>(fmt::format("D-Bus call createDump exception",
+        log<level::ERR>(std::format("D-Bus call createDump exception",
                                     "OBJPATH={}, INTERFACE={}, EXCEPTION={}",
                                     path, interface, e.what())
                             .c_str());
@@ -152,7 +152,7 @@
         {
             // Dump is disabled, Skip the dump collection.
             log<level::INFO>(
-                fmt::format("Dump is disabled on({}), skipping dump collection",
+                std::format("Dump is disabled on({}), skipping dump collection",
                             dumpParameters.unitId)
                     .c_str());
         }
