diff options
Diffstat (limited to 'com32/gpllib/dmi/dmi_memory.c')
-rw-r--r-- | com32/gpllib/dmi/dmi_memory.c | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/com32/gpllib/dmi/dmi_memory.c b/com32/gpllib/dmi/dmi_memory.c index 36937539..0647b8fe 100644 --- a/com32/gpllib/dmi/dmi_memory.c +++ b/com32/gpllib/dmi/dmi_memory.c @@ -124,15 +124,20 @@ const char *dmi_memory_device_type(uint8_t code) "RDRAM", "DDR", "DDR2", - "DDR2 FB-DIMM", /* 0x14 */ - NULL, - NULL, - NULL, - "DDR3", /* 0x18 */ - "FBD2" /* 0x19 */ + "DDR2 FB-DIMM", + "Reserved", + "Reserved", + "Reserved", + "DDR3", + "FBD2", + "DDR4", + "LPDDR", + "LPDDR2", + "LPDDR3", + "LPDDR4" /* 0x1E */ }; - if (code >= 0x01 && code <= 0x19) + if (code >= 0x01 && code <= 0x1E) return type[code - 0x01]; return out_of_spec; } @@ -152,7 +157,10 @@ void dmi_memory_device_type_detail(uint16_t code, char *type_detail, int sizeof_ "EDO", "Window DRAM", "Cache DRAM", - "Non-Volatile" /* 12 */ + "Non-Volatile", + "Registered (Buffered)", + "Unbuffered (Unregistered)", + "LRDIMM" /* 15 */ }; if ((code & 0x1FFE) == 0) @@ -160,7 +168,7 @@ void dmi_memory_device_type_detail(uint16_t code, char *type_detail, int sizeof_ else { int i; - for (i = 1; i <= 12; i++) + for (i = 1; i <= 15; i++) if (code & (1 << i)) snprintf(type_detail, sizeof_type_detail, "%s", detail[i - 1]); } |