Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 361c55cf authored by Lennert Buytenhek's avatar Lennert Buytenhek Committed by John W. Linville
Browse files

mwl8k: no need to hold ->tx_lock while setting the hardware interrupt mask

parent c3f967d3
Loading
Loading
Loading
Loading
+0 −6
Original line number Original line Diff line number Diff line
@@ -2768,9 +2768,7 @@ static void mwl8k_stop(struct ieee80211_hw *hw)
		printk(KERN_ERR "%s() timed out\n", __func__);
		printk(KERN_ERR "%s() timed out\n", __func__);


	/* Disable interrupts */
	/* Disable interrupts */
	spin_lock_irq(&priv->tx_lock);
	iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
	iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
	spin_unlock_irq(&priv->tx_lock);
	free_irq(priv->pdev->irq, hw);
	free_irq(priv->pdev->irq, hw);


	/* Stop finalize join worker */
	/* Stop finalize join worker */
@@ -3457,9 +3455,7 @@ static int __devinit mwl8k_probe(struct pci_dev *pdev,
	}
	}


	/* Disable interrupts */
	/* Disable interrupts */
	spin_lock_irq(&priv->tx_lock);
	iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
	iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
	spin_unlock_irq(&priv->tx_lock);
	free_irq(priv->pdev->irq, hw);
	free_irq(priv->pdev->irq, hw);


	rc = ieee80211_register_hw(hw);
	rc = ieee80211_register_hw(hw);
@@ -3483,9 +3479,7 @@ static int __devinit mwl8k_probe(struct pci_dev *pdev,
	mwl8k_release_firmware(priv);
	mwl8k_release_firmware(priv);


err_free_irq:
err_free_irq:
	spin_lock_irq(&priv->tx_lock);
	iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
	iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
	spin_unlock_irq(&priv->tx_lock);
	free_irq(priv->pdev->irq, hw);
	free_irq(priv->pdev->irq, hw);


err_free_queues:
err_free_queues: