summaryrefslogtreecommitdiffstats
path: root/drivers/i2o/i2o_pci.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1999-09-28 22:25:29 +0000
committerRalf Baechle <ralf@linux-mips.org>1999-09-28 22:25:29 +0000
commit0ae8dceaebe3659ee0c3352c08125f403e77ebca (patch)
tree5085c389f09da78182b899d19fe1068b619a69dd /drivers/i2o/i2o_pci.c
parent273767781288c35c9d679e908672b9996cda4c34 (diff)
Merge with 2.3.10.
Diffstat (limited to 'drivers/i2o/i2o_pci.c')
-rw-r--r--drivers/i2o/i2o_pci.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/i2o/i2o_pci.c b/drivers/i2o/i2o_pci.c
index 196d58c85..d0bcaaa18 100644
--- a/drivers/i2o/i2o_pci.c
+++ b/drivers/i2o/i2o_pci.c
@@ -10,6 +10,9 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
+ *
+ * TODO:
+ * Support polled I2O PCI controllers.
*/
#include <linux/module.h>
@@ -187,9 +190,9 @@ static void i2o_pci_unload(void)
c=i2o_find_controller(i);
if(c==NULL)
continue;
+ i2o_unlock_controller(c);
if(c->type == I2O_TYPE_PCI)
i2o_delete_controller(c);
- i2o_unlock_controller(c);
}
}
@@ -209,7 +212,6 @@ static void i2o_pci_activate(void)
{
printk("I2O: Failed to initialize iop%d\n", c->unit);
i2o_unlock_controller(c);
- free_irq(c->bus.pci.irq, c);
i2o_delete_controller(c);
continue;
}
@@ -239,4 +241,13 @@ void cleanup_module(void)
i2o_pci_unload();
}
+#else
+__init void i2o_pci_init(void)
+{
+ if(i2o_pci_scan()>=0)
+ {
+ printk(KERN_INFO "Linux I2O PCI support (c) 1999 Red Hat Software.\n");
+ i2o_pci_activate();
+ }
+}
#endif