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 9b9e1e9..5b7bf7d 100644 (file)
@@ -3306,17 +3306,6 @@ static __devinit int init_ipmi_si(void)
        }
        mutex_unlock(&smi_infos_lock);
 
        }
        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)
 #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
 
                       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
 #ifdef CONFIG_PPC_OF
        of_register_platform_driver(&ipmi_of_platform_driver);
 #endif