Include hex decode for human readable fields

Hexadecimal decode for some fields like deviceAddress
make sense to be represented in hex over decimal to make
scripting and human-usability easier.

Change-Id: I7d0d100162bc681c3c6885ca01ed23020c3b5063
Signed-off-by: Aushim Nagarkatti <anagarkatti@nvidia.com>
diff --git a/sections/cper-section-pcie.c b/sections/cper-section-pcie.c
index 41cebb3..ae91cc1 100644
--- a/sections/cper-section-pcie.c
+++ b/sections/cper-section-pcie.c
@@ -71,6 +71,13 @@
 	json_object_object_add(
 		device_id, "deviceID",
 		json_object_new_uint64(pcie_error->DevBridge.DeviceId));
+
+	char hexstring_buf[EFI_UINT64_HEX_STRING_LEN];
+	snprintf(hexstring_buf, EFI_UINT64_HEX_STRING_LEN, "0x%0X",
+		 pcie_error->DevBridge.DeviceId);
+	json_object_object_add(device_id, "deviceIDHex",
+			       json_object_new_string(hexstring_buf));
+
 	json_object_object_add(device_id, "classCode",
 			       json_object_new_uint64(class_id));
 	json_object_object_add(
@@ -154,6 +161,13 @@
 	json_object_object_add(
 		aer_capability_ir, "uncorrectable_error_status",
 		json_object_new_uint64(aer_decode->uncorrectable_error_status));
+
+	snprintf(hexstring_buf, EFI_UINT64_HEX_STRING_LEN, "0x%08" PRIX32,
+		 aer_decode->uncorrectable_error_status);
+	json_object_object_add(aer_capability_ir,
+			       "uncorrectable_error_status_hex",
+			       json_object_new_string(hexstring_buf));
+
 	json_object_object_add(
 		aer_capability_ir, "uncorrectable_error_mask",
 		json_object_new_uint64(aer_decode->uncorrectable_error_mask));
@@ -164,6 +178,13 @@
 	json_object_object_add(
 		aer_capability_ir, "correctable_error_status",
 		json_object_new_uint64(aer_decode->correctable_error_status));
+
+	snprintf(hexstring_buf, EFI_UINT64_HEX_STRING_LEN, "0x%08" PRIX32,
+		 aer_decode->correctable_error_status);
+	json_object_object_add(aer_capability_ir,
+			       "correctable_error_status_hex",
+			       json_object_new_string(hexstring_buf));
+
 	json_object_object_add(
 		aer_capability_ir, "correctable_error_mask",
 		json_object_new_uint64(aer_decode->correctable_error_mask));