Error handling for isPass1Planar API

This commit updates isPass1Planar API to set error code in case of
error. This helps the caller of API to take action based on the error
code returned from the API.

Change-Id: I3823e749d68e37f9d004b9f95c80693d1f7c5b41
Signed-off-by: Rekha Aparna <vrekhaaparna@ibm.com>
diff --git a/vpd-manager/src/worker.cpp b/vpd-manager/src/worker.cpp
index 60b89e0..520fc20 100644
--- a/vpd-manager/src/worker.cpp
+++ b/vpd-manager/src/worker.cpp
@@ -1477,7 +1477,7 @@
             uint16_t l_errCode = 0;
             // In case of pass1 planar, VPD can be corrupted on PCIe cards. Skip
             // logging error for these cases.
-            if (vpdSpecificUtility::isPass1Planar())
+            if (vpdSpecificUtility::isPass1Planar(l_errCode))
             {
                 std::string l_invPath =
                     jsonUtility::getInventoryObjPathFromJson(
@@ -1501,6 +1501,12 @@
                     return std::make_tuple(false, i_vpdFilePath);
                 }
             }
+            else if (l_errCode)
+            {
+                logging::logMessage(
+                    "Failed to check if system is Pass 1 Planar, error : " +
+                    commonUtility::getErrCodeMsg(l_errCode));
+            }
         }
 
         EventLogger::createSyncPel(