diff options
author | Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de> | 2010-03-14 17:57:52 +0000 |
---|---|---|
committer | Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de> | 2010-03-14 17:57:52 +0000 |
commit | 9732b94ec0850cbd4ee1682ef970446dacd5fbba (patch) | |
tree | c338025ecefaa7fd7a20327f75deb45fdcdbb75c /dmi.c | |
parent | 2b98b748c4db764443812d4fb93cba8bed0e1cb3 (diff) | |
download | flashrom-9732b94ec0850cbd4ee1682ef970446dacd5fbba.zip flashrom-9732b94ec0850cbd4ee1682ef970446dacd5fbba.tar.gz |
Skip DMI laptop check if DMI doesn't work
Also further removes dead code from dmi.c and adds a missing newline.
Corresponding to flashrom svn r936.
Signed-off-by: Michael Karcher <flashrom@mkarcher.dialup.fu-berlin.de>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Diffstat (limited to 'dmi.c')
-rw-r--r-- | dmi.c | 26 |
1 files changed, 6 insertions, 20 deletions
@@ -24,21 +24,7 @@ #include "flash.h" -enum dmi_strings { - DMI_SYS_MANUFACTURER, - DMI_SYS_PRODUCT, - DMI_SYS_VERSION, - DMI_BB_MANUFACTURER, - DMI_BB_PRODUCT, - DMI_BB_VERSION, - DMI_ID_INVALID, /* This must always be the last entry! */ -}; - -/* - * The short_id for baseboard starts with "m" as in mainboard to leave - * "b" available for BIOS. - */ -const char *dmidecode_names[DMI_ID_INVALID] = { +const char *dmidecode_names[] = { "system-manufacturer", "system-product-name", "system-version", @@ -51,7 +37,7 @@ const char *dmidecode_names[DMI_ID_INVALID] = { const char *dmidecode_command = "dmidecode"; int has_dmi_support = 0; -char *dmistrings[DMI_ID_INVALID]; +char *dmistrings[ARRAY_SIZE(dmidecode_names)]; /* Strings longer than 4096 in DMI are just insane. */ #define DMI_MAX_ANSWER_LEN 4096 @@ -104,17 +90,17 @@ void dmi_init(void) char *chassis_type; has_dmi_support = 1; - for (i = 0; i < DMI_ID_INVALID; i++) { + for (i = 0; i < ARRAY_SIZE(dmidecode_names); i++) { dmistrings[i] = get_dmi_string(dmidecode_names[i]); if (!dmistrings[i]) { has_dmi_support = 0; - break; + return; } } chassis_type = get_dmi_string("chassis-type"); if (chassis_type && !strcmp(chassis_type, "Notebook")) { - printf_debug("Laptop detected via DMI"); + printf_debug("Laptop detected via DMI\n"); is_laptop = 1; } free(chassis_type); @@ -175,7 +161,7 @@ int dmi_match(const char *pattern) if (!has_dmi_support) return 0; - for (i = 0; i < DMI_ID_INVALID; i++) + for (i = 0; i < ARRAY_SIZE(dmidecode_names); i++) if (dmi_compare(dmistrings[i], pattern)) return 1; |