diff --git a/sections/cper-section-arm.c b/sections/cper-section-arm.c
index 8590414..4c5ce36 100644
--- a/sections/cper-section-arm.c
+++ b/sections/cper-section-arm.c
@@ -99,7 +99,6 @@
     json_object_object_add(error_info_ir, "validationBits", validation);
 
     //The type of error information in this log.
-    //todo: The UEFI spec is ambiguous, what are the values for these??
     json_object* error_type = integer_to_readable_pair(error_info->Type, 4,
         ARM_ERROR_INFO_ENTRY_INFO_TYPES_KEYS,
         ARM_ERROR_INFO_ENTRY_INFO_TYPES_VALUES,
@@ -155,7 +154,6 @@
     json_object_object_add(cache_tlb_error_ir, "transactionType", transaction_type);
 
     //Operation.
-    //todo: What are the types' numeric values? UEFI spec is ambiguous
     json_object* operation;
     if (error_info->Type == 0)
     {
diff --git a/sections/cper-section-generic.c b/sections/cper-section-generic.c
index 04a5493..20f14c2 100644
--- a/sections/cper-section-generic.c
+++ b/sections/cper-section-generic.c
@@ -60,8 +60,8 @@
     //The level of the error.
     json_object_object_add(section_ir, "level", json_object_new_int(section_generic->Level));
 
-    //CPU version information (todo)
-    //...
+    //CPU version information.
+    json_object_object_add(section_ir, "cpuVersionInfo", json_object_new_uint64(section_generic->VersionInfo));
 
     //CPU brand string. May not exist if on ARM.
     json_object_object_add(section_ir, "cpuBrandString", json_object_new_string(section_generic->BrandString));
diff --git a/sections/cper-section-ia32x64.c b/sections/cper-section-ia32x64.c
index 5dbad18..9b38341 100644
--- a/sections/cper-section-ia32x64.c
+++ b/sections/cper-section-ia32x64.c
@@ -40,8 +40,14 @@
     //APIC ID.
     json_object_object_add(record_ir, "localAPICID", json_object_new_uint64(record->ApicId));
 
-    //CPU ID information (todo, see generic).
-    //...
+    //CPUID information.
+    json_object* cpuid_info_ir = json_object_new_object();
+    EFI_IA32_X64_CPU_ID* cpuid_info = (EFI_IA32_X64_CPU_ID*)record->CpuIdInfo;
+    json_object_object_add(cpuid_info_ir, "eax", json_object_new_uint64(cpuid_info->Eax));
+    json_object_object_add(cpuid_info_ir, "ebx", json_object_new_uint64(cpuid_info->Ebx));
+    json_object_object_add(cpuid_info_ir, "ecx", json_object_new_uint64(cpuid_info->Ecx));
+    json_object_object_add(cpuid_info_ir, "edx", json_object_new_uint64(cpuid_info->Edx));
+    json_object_object_add(record_ir, "cpuidInfo", cpuid_info_ir);
 
     //Processor error information, of the amount described above.
     EFI_IA32_X64_PROCESS_ERROR_INFO* current_error_info = (EFI_IA32_X64_PROCESS_ERROR_INFO*)(record + 1);
diff --git a/sections/cper-section-ia32x64.h b/sections/cper-section-ia32x64.h
index 81076d0..51af428 100644
--- a/sections/cper-section-ia32x64.h
+++ b/sections/cper-section-ia32x64.h
@@ -30,6 +30,14 @@
     "32-bit Mode Execution Context", "64-bit Mode Execution Context", "FXSave Context", \
     "32-bit Mode Debug Registers", "64-bit Mode Debug Registers", "Memory Mapper Registers"}
 
+typedef struct {
+    UINT64 Eax;
+    UINT64 Ebx;
+    UINT64 Ecx;
+    UINT64 Edx;
+    UINT64 Reserved[2];
+} EFI_IA32_X64_CPU_ID;
+
 json_object* cper_section_ia32x64_to_ir(void* section, EFI_ERROR_SECTION_DESCRIPTOR* descriptor);
 
 #endif
\ No newline at end of file
