psutils: Enhance PSU Update retry logic

- Update retry logic to align with IBM chart specifications.
- Add firmware file existence check before starting PSU update process.
- Switched log to lg2 in the updater for consistency.
- Fixed device intermittent issue during binding device.
- Modified the update flow to proceed even if the device driver is not
  available in sysfs.

These changes improve the robustness of the PSU update process and
enhance logging for better debug isolation.

Test:
  - Verified the updater does not start if the firmware file is missing.
  - Checked some of the logs correctly reflect the changes using lg2
  - Confirmed the PSU binds every time after FW update.
  - Test PSU update process continue when the device driver not
    available in sysfs.

Change-Id: Iaff5eaf9b9f3ee02d109cf3218f9b0614fa2bd92
Signed-off-by: Faisal Awada <faisal@us.ibm.com>
diff --git a/tools/power-utils/main.cpp b/tools/power-utils/main.cpp
index 236f0d6..5adbb1b 100644
--- a/tools/power-utils/main.cpp
+++ b/tools/power-utils/main.cpp
@@ -15,10 +15,11 @@
  */
 #include "model.hpp"
 #include "updater.hpp"
+#include "utility.hpp"
 #include "version.hpp"
 
 #include <CLI/CLI.hpp>
-#include <phosphor-logging/log.hpp>
+#include <phosphor-logging/lg2.hpp>
 #include <sdbusplus/bus.hpp>
 
 #include <cassert>
@@ -71,6 +72,13 @@
         if (updater::update(bus, updateArguments[0], updateArguments[1]))
         {
             ret = "Update successful";
+            lg2::info("Successful update to PSU: {PSU}", "PSU",
+                      updateArguments[0]);
+        }
+        else
+        {
+            lg2::error("Failed to update PSU: {PSU}", "PSU",
+                       updateArguments[0]);
         }
     }