staging: rtl8192e: Remove irq_enabled flag
authorMike McCormack <mikem@ring3k.org>
Thu, 10 Feb 2011 23:43:44 +0000 (08:43 +0900)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 18 Feb 2011 20:35:32 +0000 (12:35 -0800)
Signed-off-by: Mike McCormack <mikem@ring3k.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/rtl8192e/r8192E.h
drivers/staging/rtl8192e/r8192E_core.c

index 33db522286dff2b95167ccebe2c78826b12f6e59..92ecfc24b74dc07fcd59dd9cf8df3f6ba0ee3d3f 100644 (file)
@@ -796,7 +796,6 @@ typedef struct r8192_priv
        LED_STRATEGY_8190       LedStrategy;
        u8      IC_Cut;
        int irq;
-       short irq_enabled;
        struct ieee80211_device *ieee80211;
 #ifdef ENABLE_LPS
        bool ps_force;
index 613fbe4508badab1ae73ebda13fd0e87149f6df7..185d3903073d24c54e6560b33390763e8f2ea56a 100644 (file)
@@ -658,7 +658,6 @@ static void tx_timeout(struct net_device *dev)
 static void rtl8192_irq_enable(struct net_device *dev)
 {
        struct r8192_priv *priv = (struct r8192_priv *)ieee80211_priv(dev);
-       priv->irq_enabled = 1;
        write_nic_dword(priv, INTA_MASK, priv->irq_mask);
 }
 
@@ -667,7 +666,7 @@ void rtl8192_irq_disable(struct net_device *dev)
        struct r8192_priv *priv = (struct r8192_priv *)ieee80211_priv(dev);
 
        write_nic_dword(priv, INTA_MASK, 0);
-       priv->irq_enabled = 0;
+       synchronize_irq(dev->irq);
 }
 
 void rtl8192_update_msr(struct net_device *dev)
@@ -2003,7 +2002,6 @@ static void rtl8192_init_priv_variable(struct net_device* dev)
        priv->txringcount = 64;//32;
        priv->rxbuffersize = 9100;//2048;//1024;
        priv->rxringcount = MAX_RX_COUNT;//64;
-       priv->irq_enabled=0;
        priv->rx_skb_complete = 1;
        priv->chan = 1; //set to channel 1
        priv->RegWirelessMode = WIRELESS_MODE_AUTO;
@@ -5346,10 +5344,6 @@ static irqreturn_t rtl8192_interrupt(int irq, void *netdev)
 
        spin_lock_irqsave(&priv->irq_th_lock, flags);
 
-       /* We should return IRQ_NONE, but for now let me keep this */
-       if (priv->irq_enabled == 0)
-               goto out_unlock;
-
        /* ISR: 4bytes */
 
        inta = read_nic_dword(priv, ISR); /* & priv->IntrMask; */