Message ID | 1603068193-44688-1-git-send-email-tiantao6@hisilicon.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mmc: mediatek: replace spin_lock_irqsave by spin_lock in hard IRQ | expand |
On Mon, 19 Oct 2020 at 02:42, Tian Tao <tiantao6@hisilicon.com> wrote: > > The code has been in a irq-disabled context since it is hard IRQ. There > is no necessity to do it again. > > Signed-off-by: Tian Tao <tiantao6@hisilicon.com> Applied for next, thanks! Kind regards Uffe > --- > drivers/mmc/host/mtk-sd.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/drivers/mmc/host/mtk-sd.c b/drivers/mmc/host/mtk-sd.c > index a704745..fb3e419 100644 > --- a/drivers/mmc/host/mtk-sd.c > +++ b/drivers/mmc/host/mtk-sd.c > @@ -1536,13 +1536,12 @@ static irqreturn_t msdc_irq(int irq, void *dev_id) > struct mmc_host *mmc = mmc_from_priv(host); > > while (true) { > - unsigned long flags; > struct mmc_request *mrq; > struct mmc_command *cmd; > struct mmc_data *data; > u32 events, event_mask; > > - spin_lock_irqsave(&host->lock, flags); > + spin_lock(&host->lock); > events = readl(host->base + MSDC_INT); > event_mask = readl(host->base + MSDC_INTEN); > if ((events & event_mask) & MSDC_INT_SDIOIRQ) > @@ -1553,7 +1552,7 @@ static irqreturn_t msdc_irq(int irq, void *dev_id) > mrq = host->mrq; > cmd = host->cmd; > data = host->data; > - spin_unlock_irqrestore(&host->lock, flags); > + spin_unlock(&host->lock); > > if ((events & event_mask) & MSDC_INT_SDIOIRQ) > sdio_signal_irq(mmc); > -- > 2.7.4 >
diff --git a/drivers/mmc/host/mtk-sd.c b/drivers/mmc/host/mtk-sd.c index a704745..fb3e419 100644 --- a/drivers/mmc/host/mtk-sd.c +++ b/drivers/mmc/host/mtk-sd.c @@ -1536,13 +1536,12 @@ static irqreturn_t msdc_irq(int irq, void *dev_id) struct mmc_host *mmc = mmc_from_priv(host); while (true) { - unsigned long flags; struct mmc_request *mrq; struct mmc_command *cmd; struct mmc_data *data; u32 events, event_mask; - spin_lock_irqsave(&host->lock, flags); + spin_lock(&host->lock); events = readl(host->base + MSDC_INT); event_mask = readl(host->base + MSDC_INTEN); if ((events & event_mask) & MSDC_INT_SDIOIRQ) @@ -1553,7 +1552,7 @@ static irqreturn_t msdc_irq(int irq, void *dev_id) mrq = host->mrq; cmd = host->cmd; data = host->data; - spin_unlock_irqrestore(&host->lock, flags); + spin_unlock(&host->lock); if ((events & event_mask) & MSDC_INT_SDIOIRQ) sdio_signal_irq(mmc);
The code has been in a irq-disabled context since it is hard IRQ. There is no necessity to do it again. Signed-off-by: Tian Tao <tiantao6@hisilicon.com> --- drivers/mmc/host/mtk-sd.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)