diff mbox series

mmc: mediatek: replace spin_lock_irqsave by spin_lock in hard IRQ

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

Commit Message

Tian Tao Oct. 19, 2020, 12:43 a.m. UTC
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(-)

Comments

Ulf Hansson Oct. 29, 2020, 12:08 p.m. UTC | #1
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 mbox series

Patch

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);