]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/firmware/dmi_scan.c
Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes...
[linux-2.6-omap-h63xx.git] / drivers / firmware / dmi_scan.c
index de3027521bfaf5ece0ff6e20bfcddeb448ad80da..455575be3560d2336c75d2cc8aaf42c64a728f9c 100644 (file)
@@ -8,6 +8,11 @@
 #include <linux/slab.h>
 #include <asm/dmi.h>
 
+/*
+ * DMI stands for "Desktop Management Interface".  It is part
+ * of and an antecedent to, SMBIOS, which stands for System
+ * Management BIOS.  See further: http://www.dmtf.org/standards
+ */
 static char dmi_empty_string[] = "        ";
 
 static const char * __init dmi_string_nosave(const struct dmi_header *dm, u8 s)
@@ -217,10 +222,6 @@ static void __init dmi_save_devices(const struct dmi_header *dm)
        }
 }
 
-static struct dmi_device empty_oem_string_dev = {
-       .name = dmi_empty_string,
-};
-
 static void __init dmi_save_oem_strings_devices(const struct dmi_header *dm)
 {
        int i, count = *(u8 *)(dm + 1);
@@ -229,10 +230,8 @@ static void __init dmi_save_oem_strings_devices(const struct dmi_header *dm)
        for (i = 1; i <= count; i++) {
                char *devname = dmi_string(dm, i);
 
-               if (!strcmp(devname, dmi_empty_string)) {
-                       list_add(&empty_oem_string_dev.list, &dmi_devices);
+               if (devname == dmi_empty_string)
                        continue;
-               }
 
                dev = dmi_alloc(sizeof(*dev));
                if (!dev) {
@@ -272,7 +271,7 @@ static void __init dmi_save_ipmi_device(const struct dmi_header *dm)
        dev->name = "IPMI controller";
        dev->device_data = data;
 
-       list_add(&dev->list, &dmi_devices);
+       list_add_tail(&dev->list, &dmi_devices);
 }
 
 static void __init dmi_save_extended_devices(const struct dmi_header *dm)