Hi, My device is connected to the host by 3 IN endpoints (USB 1.1). Two of them are interrupt HID eps and the third is bulk. I have an issue with packets being concatenated while sent from the device to the host, if the polling from the host isn't quick enough. For instance, in my bulk ep, I can transfer 64 bytes in each frame. I usually send 16 byte packages. If the polling was delayed from some reason, the 4 packets will be transferred to the host the next time it polls, and 64 bytes will be transferred. If there were more than 4 packets concatenated, the rest will be lost, as only 64 bytes can be passed in a frame (but if I had a packet larger than 64 bytes in will be fragmented into 64-bytes fragments and all the data will pass). I had this issue also with the interrupt HID eps. I was supposed to send 8 bytes reports, and the EP could have transferred 16 bytes, so sometimes I had concatenations. The reports which arrived to the host were illegal (incompatible with the report descriptor, awaiting 8-byte reports) and I got resets on the USB line. As a workaround I enlarged the reports into 10 bytes, which prevented the possibility of concatenation (the ep could not transfer 20 bytes), but with the bulk ep I can't do that as anything is allowed on the bulk ep, and the maximum package size is much bigger and I don't want to overload the USB line.
My questions are: How do prevent this concatenation? I want each packet to be sent in its own frame. What is causing this issue? Should I config something in the FW related to the USB and DMA registers? Is this a "babble" condition? Can I force the host to poll every time I have data? It polls every 1ms anyway on the interrupt eps. I use a Poll Demand trigger every time I have data available for the DMA to transfer to the USB TxFifo, but these concatenations still happen. Thanks, Gadi Tunes ------------------------------------------------------------------------- SF.Net email is sponsored by: The Future of Linux Business White Paper from Novell. From the desktop to the data center, Linux is going mainstream. Let it simplify your IT future. http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4 _______________________________________________ Linux-usb-users@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-users