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 <[email protected]>
---
drivers/mmc/host/owl-mmc.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/mmc/host/owl-mmc.c b/drivers/mmc/host/owl-mmc.c
index ccf214a..82d2bad 100644
--- a/drivers/mmc/host/owl-mmc.c
+++ b/drivers/mmc/host/owl-mmc.c
@@ -134,10 +134,9 @@ static void owl_mmc_update_reg(void __iomem *reg, unsigned int val, bool state)
static irqreturn_t owl_irq_handler(int irq, void *devid)
{
struct owl_mmc_host *owl_host = devid;
- unsigned long flags;
u32 state;
- spin_lock_irqsave(&owl_host->lock, flags);
+ spin_lock(&owl_host->lock);
state = readl(owl_host->base + OWL_REG_SD_STATE);
if (state & OWL_SD_STATE_TEI) {
@@ -147,7 +146,7 @@ static irqreturn_t owl_irq_handler(int irq, void *devid)
complete(&owl_host->sdc_complete);
}
- spin_unlock_irqrestore(&owl_host->lock, flags);
+ spin_unlock(&owl_host->lock);
return IRQ_HANDLED;
}
--
2.7.4
On Mon, Nov 02, 2020 at 08:52:17AM +0800, Tian Tao wrote:
> The code has been in a irq-disabled context since it is hard IRQ. There
> is no necessity to do it again.
>
Ah, yes. This should save few cycles!
> Signed-off-by: Tian Tao <[email protected]>
Reviewed-by: Manivannan Sadhasivam <[email protected]>
Thanks,
Mani
> ---
> drivers/mmc/host/owl-mmc.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mmc/host/owl-mmc.c b/drivers/mmc/host/owl-mmc.c
> index ccf214a..82d2bad 100644
> --- a/drivers/mmc/host/owl-mmc.c
> +++ b/drivers/mmc/host/owl-mmc.c
> @@ -134,10 +134,9 @@ static void owl_mmc_update_reg(void __iomem *reg, unsigned int val, bool state)
> static irqreturn_t owl_irq_handler(int irq, void *devid)
> {
> struct owl_mmc_host *owl_host = devid;
> - unsigned long flags;
> u32 state;
>
> - spin_lock_irqsave(&owl_host->lock, flags);
> + spin_lock(&owl_host->lock);
>
> state = readl(owl_host->base + OWL_REG_SD_STATE);
> if (state & OWL_SD_STATE_TEI) {
> @@ -147,7 +146,7 @@ static irqreturn_t owl_irq_handler(int irq, void *devid)
> complete(&owl_host->sdc_complete);
> }
>
> - spin_unlock_irqrestore(&owl_host->lock, flags);
> + spin_unlock(&owl_host->lock);
>
> return IRQ_HANDLED;
> }
> --
> 2.7.4
>
On Mon, 2 Nov 2020 at 01:51, Tian Tao <[email protected]> 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 <[email protected]>
Applied for next, thanks!
Kind regards
Uffe
> ---
> drivers/mmc/host/owl-mmc.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mmc/host/owl-mmc.c b/drivers/mmc/host/owl-mmc.c
> index ccf214a..82d2bad 100644
> --- a/drivers/mmc/host/owl-mmc.c
> +++ b/drivers/mmc/host/owl-mmc.c
> @@ -134,10 +134,9 @@ static void owl_mmc_update_reg(void __iomem *reg, unsigned int val, bool state)
> static irqreturn_t owl_irq_handler(int irq, void *devid)
> {
> struct owl_mmc_host *owl_host = devid;
> - unsigned long flags;
> u32 state;
>
> - spin_lock_irqsave(&owl_host->lock, flags);
> + spin_lock(&owl_host->lock);
>
> state = readl(owl_host->base + OWL_REG_SD_STATE);
> if (state & OWL_SD_STATE_TEI) {
> @@ -147,7 +146,7 @@ static irqreturn_t owl_irq_handler(int irq, void *devid)
> complete(&owl_host->sdc_complete);
> }
>
> - spin_unlock_irqrestore(&owl_host->lock, flags);
> + spin_unlock(&owl_host->lock);
>
> return IRQ_HANDLED;
> }
> --
> 2.7.4
>