summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Garrett <mjg@redhat.com>2010-05-26 23:43:47 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-27 18:12:49 +0200
commit754d453185275951d39792865927ec494fa1ebd8 (patch)
tree4f987571383aa87efe1ddf8eaf14e91d7850dee0
parentipmi: only register one si per bmc (diff)
downloadlinux-754d453185275951d39792865927ec494fa1ebd8.tar.xz
linux-754d453185275951d39792865927ec494fa1ebd8.zip
ipmi: change device discovery order
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>
-rw-r--r--drivers/char/ipmi/ipmi_si_intf.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
index 9b9e1e915cf6..5b7bf7d22494 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -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