ipmi: change device discovery order
authorMatthew Garrett <mjg@redhat.com>
Wed, 26 May 2010 21:43:47 +0000 (14:43 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 27 May 2010 16:12:49 +0000 (09:12 -0700)
The ipmi spec provides an ordering for si discovery.  Change the driver to
match, with the exception of preferring smbios to SPMI as HPs (at least)
contain accurate information in the former but not the latter.

Signed-off-by: Matthew Garrett <mjg@redhat.com>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/char/ipmi/ipmi_si_intf.c

index 9b9e1e915cf68ba7d81a2d7a24e63ed33fd0b246..5b7bf7d22494379e9f902fbef99ef49b7a54b5aa 100644 (file)
@@ -3306,17 +3306,6 @@ static __devinit int init_ipmi_si(void)
        }
        mutex_unlock(&smi_infos_lock);
 
-#ifdef CONFIG_DMI
-       dmi_find_bmc();
-#endif
-
-#ifdef CONFIG_ACPI
-       spmi_find_bmc();
-#endif
-#ifdef CONFIG_ACPI
-       pnp_register_driver(&ipmi_pnp_driver);
-#endif
-
 #ifdef CONFIG_PCI
        rv = pci_register_driver(&ipmi_pci_driver);
        if (rv)
@@ -3325,6 +3314,18 @@ static __devinit int init_ipmi_si(void)
                       rv);
 #endif
 
+#ifdef CONFIG_ACPI
+       pnp_register_driver(&ipmi_pnp_driver);
+#endif
+
+#ifdef CONFIG_DMI
+       dmi_find_bmc();
+#endif
+
+#ifdef CONFIG_ACPI
+       spmi_find_bmc();
+#endif
+
 #ifdef CONFIG_PPC_OF
        of_register_platform_driver(&ipmi_of_platform_driver);
 #endif