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

Commit ede7193d authored by Lino Sanfilippo's avatar Lino Sanfilippo Committed by David S. Miller
Browse files

sky2: fix missing register reset on error path in sky2_test_msi()



In sky2_test_msi() the temporarily set SW IRQ in B0 register is not reset in case
that request_irq() fails.
With this patch we only set the interrupt mask if request_irq() was successful.

Signed-off-by: default avatarLino Sanfilippo <LinoSanfilippo@gmx.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent eb6a2481
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -4804,14 +4804,14 @@ static int __devinit sky2_test_msi(struct sky2_hw *hw)

	init_waitqueue_head(&hw->msi_wait);

	sky2_write32(hw, B0_IMSK, Y2_IS_IRQ_SW);

	err = request_irq(pdev->irq, sky2_test_intr, 0, DRV_NAME, hw);
	if (err) {
		dev_err(&pdev->dev, "cannot assign irq %d\n", pdev->irq);
		return err;
	}

	sky2_write32(hw, B0_IMSK, Y2_IS_IRQ_SW);

	sky2_write8(hw, B0_CTST, CS_ST_SW_IRQ);
	sky2_read8(hw, B0_CTST);