On Sun, 2002-05-12 at 23:22, Latha wrote:

> I have a USB device which has 16 bytes FIFO at the Bulk
> endpoint while the MaxPacketSize for that endpoint is 64 bytes.
> Won't sending a data payload of size bigger than 16 bytes,
> result in buffer overflow?
> 
> I assume that 16 bytes FIFO is nothing but the endpoint buffer size.

There is no direct relationship between the packet size and the hardware
FIFO somewhere in the device. For all we know, the device accepts 64
bytes and consumes them immediately, as they are received. There is no
need for FIFO. Furthermore, many microcontrollers with USB interface
have much more than 16 bytes of RAM.

Therefore, the correct answer to your question lies in the hardware
design of your device, and the firmware that controls it. From USB
protocol point of view, if the device says it can handle 64 bytes, then
it will get up to 64 bytes. What the device will do next - not USB's
concern...

If you know what this USB device is then you should review its
datasheets and find out how the flow control is done, and where the data
is buffered (if anywhere).

Dmitri

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to