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

Commit f29ab184 authored by Stephan Olbrich's avatar Stephan Olbrich Committed by Mark Brown
Browse files

spi: bcm2835aux: disable tx fifo empty irq



The tx empty irq can be disabled when all data was copied.
This prevents unnecessary interrupts while the last bytes are sent.

Signed-off-by: default avatarStephan Olbrich <stephanolbrich@gmx.de>
Reviewed-by: default avatarEric Anholt <eric@anholt.net>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 0697ae80
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -212,6 +212,12 @@ static irqreturn_t bcm2835aux_spi_interrupt(int irq, void *dev_id)
		ret = IRQ_HANDLED;
	}

	if (!bs->tx_len) {
		/* disable tx fifo empty interrupt */
		bcm2835aux_wr(bs, BCM2835_AUX_SPI_CNTL1, bs->cntl[1] |
			BCM2835_AUX_SPI_CNTL1_IDLE);
	}

	/* and if rx_len is 0 then wake up completion and disable spi */
	if (!bs->rx_len) {
		bcm2835aux_spi_reset_hw(bs);