Re: [PATCH] usb: renesas_usbhs: fixup interrupt status clear method

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Oct 11, 2012 at 09:49:38PM -0700, Kuninori Morimoto wrote:
> When interrupt happened, renesas_usbhs driver gets irq status
> by usbhs_status_get_each_irq(), and cleared all status by using 0.
> But, this method is incorrect,
> since extra interrupt might occur between them.
> This patch cleared corresponding bits only

should this be sent to stable tree also ?

> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx>
> ---
>  drivers/usb/renesas_usbhs/mod.c |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/usb/renesas_usbhs/mod.c b/drivers/usb/renesas_usbhs/mod.c
> index 35c5208..61933a9 100644
> --- a/drivers/usb/renesas_usbhs/mod.c
> +++ b/drivers/usb/renesas_usbhs/mod.c
> @@ -273,9 +273,9 @@ static irqreturn_t usbhs_interrupt(int irq, void *data)
>  	usbhs_write(priv, INTSTS0, ~irq_state.intsts0 & INTSTS0_MAGIC);
>  	usbhs_write(priv, INTSTS1, ~irq_state.intsts1 & INTSTS1_MAGIC);
>  
> -	usbhs_write(priv, BRDYSTS, 0);
> -	usbhs_write(priv, NRDYSTS, 0);
> -	usbhs_write(priv, BEMPSTS, 0);
> +	usbhs_write(priv, BRDYSTS, ~irq_state.brdysts);
> +	usbhs_write(priv, NRDYSTS, ~irq_state.nrdysts);
> +	usbhs_write(priv, BEMPSTS, ~irq_state.bempsts);
>  
>  	/*
>  	 * call irq callback functions
> -- 
> 1.7.9.5
> 

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux