Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / drivers / net / appletalk / ltpc.c
index 70a7a18..d5666c3 100644 (file)
@@ -227,17 +227,17 @@ static int dma;
 #include <linux/delay.h>
 #include <linux/timer.h>
 #include <linux/atalk.h>
+#include <linux/bitops.h>
 
 #include <asm/system.h>
-#include <asm/bitops.h>
 #include <asm/dma.h>
 #include <asm/io.h>
 
 /* our stuff */
 #include "ltpc.h"
 
-static spinlock_t txqueue_lock = SPIN_LOCK_UNLOCKED;
-static spinlock_t mbox_lock = SPIN_LOCK_UNLOCKED;
+static DEFINE_SPINLOCK(txqueue_lock);
+static DEFINE_SPINLOCK(mbox_lock);
 
 /* function prototypes */
 static int do_read(struct net_device *dev, void *cbuf, int cbuflen,
@@ -1039,7 +1039,7 @@ struct net_device * __init ltpc_probe(void)
        unsigned long f;
        unsigned long timeout;
 
-       dev = alloc_netdev(sizeof(struct ltpc_private), "lt%d", ltalk_setup);
+       dev = alloc_ltalkdev(sizeof(struct ltpc_private));
        if (!dev)
                goto out;
 
@@ -1109,8 +1109,7 @@ struct net_device * __init ltpc_probe(void)
        inb_p(io+1);
        inb_p(io+3);
 
-       set_current_state(TASK_UNINTERRUPTIBLE);
-       schedule_timeout(2*HZ/100);
+       msleep(20);
 
        inb_p(io+0);
        inb_p(io+2);
@@ -1120,8 +1119,7 @@ struct net_device * __init ltpc_probe(void)
        inb_p(io+5); /* enable dma */
        inb_p(io+6); /* tri-state interrupt line */
 
-       set_current_state(TASK_UNINTERRUPTIBLE);
-       schedule_timeout(HZ);
+       ssleep(1);
        
        /* now, figure out which dma channel we're using, unless it's
           already been specified */
@@ -1257,10 +1255,10 @@ static struct net_device *dev_ltpc;
 #ifdef MODULE
 
 MODULE_LICENSE("GPL");
-MODULE_PARM(debug, "i");
-MODULE_PARM(io, "i");
-MODULE_PARM(irq, "i");
-MODULE_PARM(dma, "i");
+module_param(debug, int, 0);
+module_param(io, int, 0);
+module_param(irq, int, 0);
+module_param(dma, int, 0);
 
 
 int __init init_module(void)