summaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorMatthew Garrett2010-05-26 23:43:47 +0200
committerLinus Torvalds2010-05-27 18:12:49 +0200
commit754d453185275951d39792865927ec494fa1ebd8 (patch)
tree4f987571383aa87efe1ddf8eaf14e91d7850dee0 /drivers/char
parentipmi: only register one si per bmc (diff)
downloadkernel-qcow2-linux-754d453185275951d39792865927ec494fa1ebd8.tar.gz
kernel-qcow2-linux-754d453185275951d39792865927ec494fa1ebd8.tar.xz
kernel-qcow2-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>
Diffstat (limited to 'drivers/char')
-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