Swaminathan S wrote:

Fixes the SENTSTALL handling code to look for EP busy status before
returning the request.  If EP is not busy do not giveback the request and
restart the request in the context of CLEAR STALL feature from the
host.

If EP is busy, we have even less reason to do a giveback. This is not a real fix, just pallialtive. Actually, whether a STALL token has been sent or not shouldn't play any role in giving back URB, so the fragment being pacthed is just totally wrong. Other drivers just don't allow EP that is still active to be halted, and this driver should do the same.

Signed-off-by: Swaminathan S <[EMAIL PROTECTED]>
---
 drivers/usb/musb/musb_gadget.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c
index d6a802c..491a3e7 100644
--- a/drivers/usb/musb/musb_gadget.c
+++ b/drivers/usb/musb/musb_gadget.c
@@ -335,10 +335,10 @@ static void txstate(struct musb *musb, struct 
musb_request *req)
 #elif defined(CONFIG_USB_TI_CPPI_DMA)
                /* program endpoint CSR first, then setup DMA */
                csr &= ~(MUSB_TXCSR_AUTOSET
-                               | MUSB_TXCSR_DMAMODE
                                | MUSB_TXCSR_P_UNDERRUN
                                | MUSB_TXCSR_TXPKTRDY);
-               csr |= MUSB_TXCSR_MODE | MUSB_TXCSR_DMAENAB;
+               csr |= MUSB_TXCSR_MODE | MUSB_TXCSR_DMAENAB |
+                       MUSB_TXCSR_DMAMODE;

   What this has to do with STALL handling?

WBR, Sergei

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to