RE: [PATCH] usb: dwc3: ep0: fix delayed status is queued too early

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

 



> From: Alan Stern [mailto:stern@xxxxxxxxxxxxxxxxxxx]
> Sent: Thursday, May 08, 2014 12:07 PM
> 
> On Thu, 8 May 2014, Paul Zimmerman wrote:
> 
> > Just FYI, the DWC3 core is designed to always respond to SETUP packets.
> > It has a 3-deep input buffer for SETUPs, provided the RxFIFO is set up
> > properly according to the databook. If the buffer fills up, then
> > further SETUP packets will get lost, but they will still be ACKed.
> 
> Really?  That seems odd.  Isn't the most recent SETUP packet the one
> you want to handle?

I just spoke to one of the RTL designers about this, and I was wrong in
one of my previous statements.

The controller does have a 3-deep buffer for SETUP packets. But if the
buffer fills up and a 4th SETUP packet comes in, the controller will
not ACK it, it will time out the transfer instead.

So if that state is ever reached, the host should issue a USB reset and
start over.

-- 
Paul

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




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

  Powered by Linux