diff options
author | Barry Song <song.bao.hua@hisilicon.com> | 2020-09-26 03:16:16 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-10-02 01:45:28 +0300 |
commit | e236893387f8fcace3660d7785b6fb05cf3bc209 (patch) | |
tree | 2d0931de0780a9d659dffefa74d92f4d22043e00 /drivers/spi | |
parent | 69544f2c15926379d6fb182b142e044b7378b5cf (diff) | |
download | linux-e236893387f8fcace3660d7785b6fb05cf3bc209.tar.xz |
spi: spi-stm32: remove redundant irqsave and irqrestore in hardIRQ
Running in hardIRQ, disabling IRQ is redundant.
Signed-off-by: Barry Song <song.bao.hua@hisilicon.com>
Link: https://lore.kernel.org/r/20200926001616.21292-2-song.bao.hua@hisilicon.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi')
-rw-r--r-- | drivers/spi/spi-stm32.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/spi/spi-stm32.c b/drivers/spi/spi-stm32.c index f0e594b2fee4..9a8a37bdc0ab 100644 --- a/drivers/spi/spi-stm32.c +++ b/drivers/spi/spi-stm32.c @@ -804,10 +804,9 @@ static irqreturn_t stm32f4_spi_irq_event(int irq, void *dev_id) struct spi_master *master = dev_id; struct stm32_spi *spi = spi_master_get_devdata(master); u32 sr, mask = 0; - unsigned long flags; bool end = false; - spin_lock_irqsave(&spi->lock, flags); + spin_lock(&spi->lock); sr = readl_relaxed(spi->base + STM32F4_SPI_SR); /* @@ -833,7 +832,7 @@ static irqreturn_t stm32f4_spi_irq_event(int irq, void *dev_id) if (!(sr & mask)) { dev_dbg(spi->dev, "spurious IT (sr=0x%08x)\n", sr); - spin_unlock_irqrestore(&spi->lock, flags); + spin_unlock(&spi->lock); return IRQ_NONE; } @@ -875,11 +874,11 @@ end_irq: STM32F4_SPI_CR2_TXEIE | STM32F4_SPI_CR2_RXNEIE | STM32F4_SPI_CR2_ERRIE); - spin_unlock_irqrestore(&spi->lock, flags); + spin_unlock(&spi->lock); return IRQ_WAKE_THREAD; } - spin_unlock_irqrestore(&spi->lock, flags); + spin_unlock(&spi->lock); return IRQ_HANDLED; } |