diff --git a/extensions/phal/create_pel.cpp b/extensions/phal/create_pel.cpp
index 6ba71d0..13be9ba 100644
--- a/extensions/phal/create_pel.cpp
+++ b/extensions/phal/create_pel.cpp
@@ -87,7 +87,7 @@
 }
 
 uint32_t createSbeErrorPEL(const std::string& event, const sbeError_t& sbeError,
-                           const FFDCData& ffdcData)
+                           const FFDCData& ffdcData, const Severity severity)
 {
     uint32_t plid = 0;
     std::map<std::string, std::string> additionalData;
@@ -132,8 +132,7 @@
                                 opLoggingInterface, "CreatePELWithFFDCFiles");
         auto level =
             sdbusplus::xyz::openbmc_project::Logging::server::convertForMessage(
-                sdbusplus::xyz::openbmc_project::Logging::server::Entry::Level::
-                    Error);
+                severity);
         method.append(event, level, additionalData, pelFFDCInfo);
         auto response = bus.call(method);
 
diff --git a/extensions/phal/create_pel.hpp b/extensions/phal/create_pel.hpp
index 481417b..53b8751 100644
--- a/extensions/phal/create_pel.hpp
+++ b/extensions/phal/create_pel.hpp
@@ -1,5 +1,7 @@
 #pragma once
 
+#include "xyz/openbmc_project/Logging/Entry/server.hpp"
+
 #include <phal_exception.H>
 
 #include <nlohmann/json.hpp>
@@ -15,7 +17,7 @@
 using json = nlohmann::json;
 
 using namespace openpower::phal;
-
+using Severity = sdbusplus::xyz::openbmc_project::Logging::server::Entry::Level;
 /**
  * @brief Create PEL with additional parameters and callout
  *
@@ -32,10 +34,12 @@
  * @param[in] event - the event type
  * @param[in] sbeError - SBE error object
  * @param[in] ffdcData - failure data to append to PEL
+ * @param[in] severity - severity of the log
  * @return Platform log id
  */
 uint32_t createSbeErrorPEL(const std::string& event, const sbeError_t& sbeError,
-                           const FFDCData& ffdcData);
+                           const FFDCData& ffdcData,
+                           const Severity severity = Severity::Error);
 
 /**
  * @brief Create a PEL for the specified event type and additional data
