aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/sky2.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index 6cc5696e9a3e..2a2adc23f6ae 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -3189,6 +3189,8 @@ static int __devinit sky2_test_msi(struct sky2_hw *hw)
3189 struct pci_dev *pdev = hw->pdev; 3189 struct pci_dev *pdev = hw->pdev;
3190 int err; 3190 int err;
3191 3191
3192 init_waitqueue_head (&hw->msi_wait);
3193
3192 sky2_write32(hw, B0_IMSK, Y2_IS_IRQ_SW); 3194 sky2_write32(hw, B0_IMSK, Y2_IS_IRQ_SW);
3193 3195
3194 err = request_irq(pdev->irq, sky2_test_intr, IRQF_SHARED, DRV_NAME, hw); 3196 err = request_irq(pdev->irq, sky2_test_intr, IRQF_SHARED, DRV_NAME, hw);
@@ -3198,10 +3200,8 @@ static int __devinit sky2_test_msi(struct sky2_hw *hw)
3198 return err; 3200 return err;
3199 } 3201 }
3200 3202
3201 init_waitqueue_head (&hw->msi_wait);
3202
3203 sky2_write8(hw, B0_CTST, CS_ST_SW_IRQ); 3203 sky2_write8(hw, B0_CTST, CS_ST_SW_IRQ);
3204 wmb(); 3204 sky2_read8(hw, B0_CTST);
3205 3205
3206 wait_event_timeout(hw->msi_wait, hw->msi_detected, HZ/10); 3206 wait_event_timeout(hw->msi_wait, hw->msi_detected, HZ/10);
3207 3207