Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1293114 > unrolled thread

Re: [PATCH] usb: dwc2: fix transfer stop programming for out endpoint

Started byFelipe Balbi <balbi@ti.com>
First post2015-12-16 18:00 +0100
Last post2015-12-16 22:40 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH] usb: dwc2: fix transfer stop programming for out endpoint Felipe Balbi <balbi@ti.com> - 2015-12-16 18:00 +0100
    Re: [PATCH] usb: dwc2: fix transfer stop programming for out  endpoint John Youn <John.Youn@synopsys.com> - 2015-12-16 22:40 +0100

#1293114 — Re: [PATCH] usb: dwc2: fix transfer stop programming for out endpoint

FromFelipe Balbi <balbi@ti.com>
Date2015-12-16 18:00 +0100
SubjectRe: [PATCH] usb: dwc2: fix transfer stop programming for out endpoint
Message-ID<qGnAM-4iQ-57@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

Hi,

changbin.du@intel.com writes:
> From: "Du, Changbin" <changbin.du@intel.com>
>
> To stop an out endpoint, software should set sets the Global OUT NAK,
> but not the Global Non-periodic IN NAK. This driver bug leads the out-ep
> failed be in disabled state with below error.
>
> dwc2_hsotg_ep_stop_xfr: timeout DOEPCTL.EPDisable
>
> Signed-off-by: Du, Changbin <changbin.du@intel.com>

John, is this patch okay to apply ?

> ---
>  drivers/usb/dwc2/gadget.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c
> index 0abf73c..92a182f 100644
> --- a/drivers/usb/dwc2/gadget.c
> +++ b/drivers/usb/dwc2/gadget.c
> @@ -2911,15 +2911,15 @@ static void dwc2_hsotg_ep_stop_xfr(struct dwc2_hsotg *hsotg,
>  				"%s: timeout DIEPINT.NAKEFF\n", __func__);
>  	} else {
>  		/* Clear any pending nak effect interrupt */
> -		dwc2_writel(GINTSTS_GINNAKEFF, hsotg->regs + GINTSTS);
> +		dwc2_writel(GINTSTS_GOUTNAKEFF, hsotg->regs + GINTSTS);
>  
> -		__orr32(hsotg->regs + DCTL, DCTL_SGNPINNAK);
> +		__orr32(hsotg->regs + DCTL, DCTL_SGOUTNAK);
>  
>  		/* Wait for global nak to take effect */
>  		if (dwc2_hsotg_wait_bit_set(hsotg, GINTSTS,
> -						GINTSTS_GINNAKEFF, 100))
> +						GINTSTS_GOUTNAKEFF, 100))
>  			dev_warn(hsotg->dev,
> -				"%s: timeout GINTSTS.GINNAKEFF\n", __func__);
> +				"%s: timeout GINTSTS.GOUTNAKEFF\n", __func__);
>  	}
>  
>  	/* Disable ep */
> @@ -2944,7 +2944,7 @@ static void dwc2_hsotg_ep_stop_xfr(struct dwc2_hsotg *hsotg,
>  		/* TODO: Flush shared tx fifo */
>  	} else {
>  		/* Remove global NAKs */
> -		__bic32(hsotg->regs + DCTL, DCTL_SGNPINNAK);
> +		__bic32(hsotg->regs + DCTL, DCTL_SGOUTNAK);
>  	}
>  }
>  
> -- 
> 2.5.0
>

-- 
balbi

[toc] | [next] | [standalone]


#1293355 — Re: [PATCH] usb: dwc2: fix transfer stop programming for out endpoint

FromJohn Youn <John.Youn@synopsys.com>
Date2015-12-16 22:40 +0100
SubjectRe: [PATCH] usb: dwc2: fix transfer stop programming for out endpoint
Message-ID<qGrXH-7a6-7@gated-at.bofh.it>
In reply to#1293114
On 12/16/2015 8:58 AM, Felipe Balbi wrote:
> 
> Hi,
> 
> changbin.du@intel.com writes:
>> From: "Du, Changbin" <changbin.du@intel.com>
>>
>> To stop an out endpoint, software should set sets the Global OUT NAK,
>> but not the Global Non-periodic IN NAK. This driver bug leads the out-ep
>> failed be in disabled state with below error.
>>
>> dwc2_hsotg_ep_stop_xfr: timeout DOEPCTL.EPDisable
>>
>> Signed-off-by: Du, Changbin <changbin.du@intel.com>
> 
> John, is this patch okay to apply ?
> 

Yes. Looks good to me.


Acked-by: John Youn <johnyoun@synopsys.com>

John


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web