patch-1.3.18 linux/drivers/net/wd.c

Next file: linux/drivers/sound/.version
Previous file: linux/drivers/net/wavelan.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.17/linux/drivers/net/wd.c linux/drivers/net/wd.c
@@ -400,12 +400,14 @@
 static struct device dev_wd80x3 = {
 	"        " /*"wd80x3"*/, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, wd_probe };
 
-int io = 0;
+int io = 0x300;
 int irq = 0;
 int mem = 0;
 
 int init_module(void)
 {
+	if (io == 0)
+	  printk("wd: You should not use auto-probing with insmod!\n");
 	dev_wd80x3.base_addr = io;
 	dev_wd80x3.irq       = irq;
 	dev_wd80x3.mem_start = mem;
@@ -421,6 +423,11 @@
 		printk("wd80x3: device busy, remove delayed\n");
 	else
 	{
+		int ioaddr = dev_wd80x3.base_addr - WD_NIC_OFFSET;
+
+    	free_irq(dev_wd80x3.irq);
+    	release_region(ioaddr, WD_IO_EXTENT);
+
 		unregister_netdev(&dev_wd80x3);
 	}
 }

FUNET's LINUX-ADM group, [email protected]
TCL-scripts by Sam Shen, [email protected] with Sam's (original) version
of this