{
        struct sf_pdma_chan *chan = dev_id;
        struct pdma_regs *regs = &chan->regs;
-       unsigned long flags;
        u64 residue;
 
-       spin_lock_irqsave(&chan->vchan.lock, flags);
+       spin_lock(&chan->vchan.lock);
        writel((readl(regs->ctrl)) & ~PDMA_DONE_STATUS_MASK, regs->ctrl);
        residue = readq(regs->residue);
 
                sf_pdma_xfer_desc(chan);
        }
 
-       spin_unlock_irqrestore(&chan->vchan.lock, flags);
+       spin_unlock(&chan->vchan.lock);
 
        return IRQ_HANDLED;
 }
 {
        struct sf_pdma_chan *chan = dev_id;
        struct pdma_regs *regs = &chan->regs;
-       unsigned long flags;
 
-       spin_lock_irqsave(&chan->lock, flags);
+       spin_lock(&chan->lock);
        writel((readl(regs->ctrl)) & ~PDMA_ERR_STATUS_MASK, regs->ctrl);
-       spin_unlock_irqrestore(&chan->lock, flags);
+       spin_unlock(&chan->lock);
 
        tasklet_schedule(&chan->err_tasklet);