Commit 5fe058b0 authored by Tian Tao's avatar Tian Tao Committed by Wolfram Sang
Browse files

i2c: qup: move to use request_irq by IRQF_NO_AUTOEN flag



disable_irq() after request_irq() still has a time gap in which
interrupts can come. request_irq() with IRQF_NO_AUTOEN flag will
disable IRQ auto-enable because of requesting.

Signed-off-by: default avatarTian Tao <tiantao6@hisilicon.com>
Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
parent 8e98c4f5
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1797,12 +1797,12 @@ static int qup_i2c_probe(struct platform_device *pdev)
		goto fail;

	ret = devm_request_irq(qup->dev, qup->irq, qup_i2c_interrupt,
			       IRQF_TRIGGER_HIGH, "i2c_qup", qup);
			       IRQF_TRIGGER_HIGH | IRQF_NO_AUTOEN,
			       "i2c_qup", qup);
	if (ret) {
		dev_err(qup->dev, "Request %d IRQ failed\n", qup->irq);
		goto fail;
	}
	disable_irq(qup->irq);

	hw_ver = readl(qup->base + QUP_HW_VERSION);
	dev_dbg(qup->dev, "Revision %x\n", hw_ver);