spi: remove spin_lock_irq and variable in the irq procress
authorLi-hao Kuo <lhjeff911@gmail.com>
Fri, 15 Apr 2022 08:12:04 +0000 (16:12 +0800)
committerMark Brown <broonie@kernel.org>
Tue, 19 Apr 2022 12:13:42 +0000 (13:13 +0100)
remove spin_lock_irq spin_unlock_irq and variable in the irq funciton

Signed-off-by: Li-hao Kuo <lhjeff911@gmail.com>
Link: https://lore.kernel.org/r/f9991d6064d892d22ac7c2dfabe16309e9d03888.1650010304.git.lhjeff911@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-sunplus-sp7021.c

index f989f7b..f1fa887 100644 (file)
@@ -85,8 +85,6 @@ struct sp7021_spi_ctlr {
        int s_irq;
        struct clk *spi_clk;
        struct reset_control *rstc;
-       // irq spin lock
-       spinlock_t lock;
        // data xfer lock
        struct mutex buf_lock;
        struct completion isr_done;
@@ -199,8 +197,6 @@ static irqreturn_t sp7021_spi_master_irq(int irq, void *dev)
        if (tx_len == 0 && total_len == 0)
                return IRQ_NONE;
 
-       spin_lock_irq(&pspim->lock);
-
        rx_cnt = FIELD_GET(SP7021_RX_CNT_MASK, fd_status);
        if (fd_status & SP7021_RX_FULL_FLAG)
                rx_cnt = pspim->data_unit;
@@ -239,7 +235,6 @@ static irqreturn_t sp7021_spi_master_irq(int irq, void *dev)
 
        if (isrdone)
                complete(&pspim->isr_done);
-       spin_unlock_irq(&pspim->lock);
        return IRQ_HANDLED;
 }
 
@@ -446,7 +441,6 @@ static int sp7021_spi_controller_probe(struct platform_device *pdev)
        pspim->mode = mode;
        pspim->ctlr = ctlr;
        pspim->dev = dev;
-       spin_lock_init(&pspim->lock);
        mutex_init(&pspim->buf_lock);
        init_completion(&pspim->isr_done);
        init_completion(&pspim->slave_isr);