diff options
author | Burt P <pburt0@gmail.com> | 2018-10-20 22:21:08 -0500 |
---|---|---|
committer | Leandro A. F. Pereira <leandro@hardinfo.org> | 2018-10-22 19:45:23 -0700 |
commit | a73df0592d79a37e1a35ec9fa4922bebe539d824 (patch) | |
tree | 4ed543d1661f69175f0b774a615a2a606df860c3 /modules/devices/x86/processor.c | |
parent | 525a03fdcc99b898c2a63812ee74d838d951aadc (diff) |
x86: add mfgr and part to memory socket info
Signed-off-by: Burt P <pburt0@gmail.com>
Diffstat (limited to 'modules/devices/x86/processor.c')
-rw-r--r-- | modules/devices/x86/processor.c | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/modules/devices/x86/processor.c b/modules/devices/x86/processor.c index 137324f8..db4f1589 100644 --- a/modules/devices/x86/processor.c +++ b/modules/devices/x86/processor.c @@ -745,10 +745,26 @@ gchar *dmi_socket_info() { gchar *voltage_min_str = dmidecode_match("Minimum Voltage", &dtm, &h); gchar *voltage_max_str = dmidecode_match("Maximum Voltage", &dtm, &h); gchar *voltage_conf_str = dmidecode_match("Configured Voltage", &dtm, &h); + gchar *mfgr = dmidecode_match("Manufacturer", &dtm, &h); + gchar *partno = dmidecode_match("Part Number", &dtm, &h); + + gchar *vendor_str = NULL; + if (mfgr) { + const gchar *v_url = vendor_get_url(mfgr); + if (v_url) + vendor_str = g_strdup_printf(" (%s, %s)", + vendor_get_name(mfgr), v_url ); + else + vendor_str = g_strdup(""); + } + +#define UNKIFNULL2(f) ((f) ? f : _("(Unknown)")) ret = h_strdup_cprintf("[%s (%lu) %s]\n" "%s=0x%x\n" "%s=%s\n" + "%s=%s%s\n" + "%s=%s\n" "%s=%s / %s\n" "%s=%s\n" "%s=%s\n" @@ -759,14 +775,16 @@ gchar *dmi_socket_info() { ret, _("Memory Socket"), i, locator, _("DMI Handle"), h, - _("Form Factor"), form_factor, - _("Type"), type, type_detail, - _("Size"), size_str, - _("Speed"), speed_str, - _("Configured Clock Frequency"), configured_clock_str, - _("Minimum Voltage"), voltage_min_str, - _("Maximum Voltage"), voltage_max_str, - _("Configured Voltage"), voltage_conf_str + _("Form Factor"), UNKIFNULL2(form_factor), + _("Manufacturer"), UNKIFNULL2(mfgr), vendor_str, + _("Part Number"), UNKIFNULL2(partno), + _("Type"), UNKIFNULL2(type), UNKIFNULL2(type_detail), + _("Size"), UNKIFNULL2(size_str), + _("Speed"), UNKIFNULL2(speed_str), + _("Configured Clock Frequency"), UNKIFNULL2(configured_clock_str), + _("Minimum Voltage"), UNKIFNULL2(voltage_min_str), + _("Maximum Voltage"), UNKIFNULL2(voltage_max_str), + _("Configured Voltage"), UNKIFNULL2(voltage_conf_str) ); g_free(type); g_free(form_factor); @@ -775,6 +793,9 @@ gchar *dmi_socket_info() { g_free(voltage_min_str); g_free(voltage_max_str); g_free(voltage_conf_str); + g_free(mfgr); + g_free(partno); + g_free(vendor_str); } g_free(size_str); g_free(locator); |