Pull vector-domain into release branch
[sfrench/cifs-2.6.git] / drivers / net / wan / sbni.c
index 175ba13bce41b32fec866d58f5674c9b2cbb82da..1cc18e787a65e4c39dc8e0e1fff2eed027d1ab6c 100644 (file)
@@ -37,7 +37,6 @@
  *     Known problem: this driver wasn't tested on multiprocessor machine.
  */
 
-#include <linux/config.h>
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/ptrace.h>
@@ -120,7 +119,7 @@ static int  sbni_ioctl( struct net_device *, struct ifreq *, int );
 static struct net_device_stats  *sbni_get_stats( struct net_device * );
 static void  set_multicast_list( struct net_device * );
 
-static irqreturn_t sbni_interrupt( int, void *, struct pt_regs * );
+static irqreturn_t sbni_interrupt( int, void * );
 static void  handle_channel( struct net_device * );
 static int   recv_frame( struct net_device * );
 static void  send_frame( struct net_device * );
@@ -502,7 +501,7 @@ sbni_start_xmit( struct sk_buff  *skb,  struct net_device  *dev )
  */ 
 
 static irqreturn_t
-sbni_interrupt( int  irq,  void  *dev_id,  struct pt_regs  *regs )
+sbni_interrupt( int  irq,  void  *dev_id )
 {
        struct net_device         *dev = (struct net_device *) dev_id;
        struct net_local  *nl  = (struct net_local *) dev->priv;
@@ -596,8 +595,8 @@ recv_frame( struct net_device  *dev )
 
        u32  crc = CRC32_INITIAL;
 
-       unsigned  framelen, frameno, ack;
-       unsigned  is_first, frame_ok;
+       unsigned  framelen = 0, frameno, ack;
+       unsigned  is_first, frame_ok = 0;
 
        if( check_fhdr( ioaddr, &framelen, &frameno, &ack, &is_first, &crc ) ) {
                frame_ok = framelen > 4
@@ -605,8 +604,7 @@ recv_frame( struct net_device  *dev )
                        :  skip_tail( ioaddr, framelen, crc );
                if( frame_ok )
                        interpret_ack( dev, ack );
-       } else
-               frame_ok = 0;
+       }
 
        outb( inb( ioaddr + CSR0 ) ^ CT_ZER, ioaddr + CSR0 );
        if( frame_ok ) {
@@ -1000,11 +998,6 @@ get_rx_buf( struct net_device  *dev )
        if( !skb )
                return  NULL;
 
-#ifdef CONFIG_SBNI_MULTILINE
-       skb->dev = ((struct net_local *) dev->priv)->master;
-#else
-       skb->dev = dev;
-#endif
        skb_reserve( skb, 2 );          /* Align IP on longword boundaries */
        return  skb;
 }
@@ -1193,7 +1186,7 @@ sbni_open( struct net_device  *dev )
                        }
        }
 
-       if( request_irq(dev->irq, sbni_interrupt, SA_SHIRQ, dev->name, dev) ) {
+       if( request_irq(dev->irq, sbni_interrupt, IRQF_SHARED, dev->name, dev) ) {
                printk( KERN_ERR "%s: unable to get IRQ %d.\n",
                        dev->name, dev->irq );
                return  -EAGAIN;