IPMI: Add PPC openfirmware unregister
authorChristian Krafft <krafft@de.ibm.com>
Sat, 12 May 2007 17:37:01 +0000 (10:37 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sat, 12 May 2007 17:55:40 +0000 (10:55 -0700)
When trying to load the ipmi_si module on a powerpc with no BMC (baseboard
management controller) the driver failes to load correctly, but doesn't
unregister itself from of_platform.  So, on a second modprobe the kernel
crashes.  This patch adds the missing unregister call.

Signed-off-by: Christian Krafft <krafft@de.ibm.com>
Signed-off-by: Corey Minyard <minyard@acm.org>
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 4769cc2..78e1b96 100644 (file)
@@ -2974,6 +2974,10 @@ static __devinit int init_ipmi_si(void)
 #ifdef CONFIG_PCI
                pci_unregister_driver(&ipmi_pci_driver);
 #endif
+
+#ifdef CONFIG_PPC_OF
+               of_unregister_platform_driver(&ipmi_of_platform_driver);
+#endif
                driver_unregister(&ipmi_driver);
                printk("ipmi_si: Unable to find any System Interface(s)\n");
                return -ENODEV;