[PATCH] usb: mtu3: replace spin_lock_irqsave by spin_lock in hard IRQ

Chunfeng Yun chunfeng.yun at mediatek.com
Tue Nov 24 21:33:29 EST 2020


Hi Tao,
On Mon, 2020-11-16 at 16:34 +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.
> 
> Signed-off-by: Tian Tao <tiantao6 at hisilicon.com>
> ---
>  drivers/usb/mtu3/mtu3_core.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/usb/mtu3/mtu3_core.c b/drivers/usb/mtu3/mtu3_core.c
> index b3b4599..a6d7684 100644
> --- a/drivers/usb/mtu3/mtu3_core.c
> +++ b/drivers/usb/mtu3/mtu3_core.c
> @@ -745,10 +745,9 @@ static irqreturn_t mtu3_u2_common_isr(struct mtu3 *mtu)
>  static irqreturn_t mtu3_irq(int irq, void *data)
>  {
>  	struct mtu3 *mtu = (struct mtu3 *)data;
> -	unsigned long flags;
>  	u32 level1;
>  
> -	spin_lock_irqsave(&mtu->lock, flags);
> +	spin_lock(&mtu->lock);
Sorry for late reply, I prefer to leave the code unchanged.

Thanks

>  
>  	/* U3D_LV1ISR is RU */
>  	level1 = mtu3_readl(mtu->mac_base, U3D_LV1ISR);
> @@ -769,7 +768,7 @@ static irqreturn_t mtu3_irq(int irq, void *data)
>  	if (level1 & QMU_INTR)
>  		mtu3_qmu_isr(mtu);
>  
> -	spin_unlock_irqrestore(&mtu->lock, flags);
> +	spin_unlock(&mtu->lock);
>  
>  	return IRQ_HANDLED;
>  }



More information about the Linux-mediatek mailing list