diff --git a/.clang-format b/.clang-format
index a75a2c2..e5530e6 100644
--- a/.clang-format
+++ b/.clang-format
@@ -104,7 +104,7 @@
 PenaltyBreakString: 1000
 PenaltyBreakTemplateDeclaration: 10
 PenaltyExcessCharacter: 1000000
-PenaltyReturnTypeOnItsOwnLine: 60
+PenaltyReturnTypeOnItsOwnLine: 150
 PenaltyIndentedWhitespace: 1
 PointerAlignment: Left
 QualifierAlignment: Left
diff --git a/src/power_control.cpp b/src/power_control.cpp
index 0fd422d..8bb0896 100644
--- a/src/power_control.cpp
+++ b/src/power_control.cpp
@@ -230,8 +230,8 @@
     Standby,
 };
 static OperatingSystemStateStage operatingSystemState;
-static constexpr std::string_view
-    getOperatingSystemStateStage(const OperatingSystemStateStage stage)
+static constexpr std::string_view getOperatingSystemStateStage(
+    const OperatingSystemStateStage stage)
 {
     switch (stage)
     {
@@ -2507,8 +2507,8 @@
 }
 
 template <typename T>
-static std::optional<T>
-    getMessageValue(sdbusplus::message_t& msg, const std::string& name)
+static std::optional<T> getMessageValue(sdbusplus::message_t& msg,
+                                        const std::string& name)
 {
     std::string event;
     std::string thresholdInterface;
@@ -2566,8 +2566,8 @@
     }
 }
 
-static sdbusplus::bus::match_t
-    dbusGPIOMatcher(const ConfigData& cfg, std::function<void(bool)> onMatch)
+static sdbusplus::bus::match_t dbusGPIOMatcher(
+    const ConfigData& cfg, std::function<void(bool)> onMatch)
 {
     auto pulseEventMatcherCallback =
         [&cfg, onMatch](sdbusplus::message_t& msg) {
