Re: USB Bulk buffer size

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

 



On Wed, Oct 12, 2011 at 4:00 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> On Wed, 12 Oct 2011, Markus Rechberger wrote:
>
>> the other tests were done with 24064*2, and fragments of 24064 which
>> end up to fail.
>>
>> > I guess there's some latency issue with that chipset which is only
>> > okay with the mentioned packet size.
>
> No -- you're changing the transfer size, not the packet size.

You are right yes, I meant transfer size actually.

> But it's
> important to keep in mind that the device is completely unaware of the
> transfer size.  All it sees are individual packets (and the time delays
> between them).
>

how sure are you about that one? I thought the same but one of our devices
has specific registers for the USB transfer size, up to 256*188 (which
is 48128 or 94 512 bytes bulk buffers.
If we do not modify that one the CPU load is very high with Linux,
also with MacOSX.
The only drawback we have with small bulk values with linux is that
the CPU usage is very high.
(this is about another device).

>> > I also tried to increase the packet size to 24064*2, it also causes
>> > corruptions (my linux kernel is patched to allow bigger sizes).
>
> If this is true then you really don't understand how the device works
> and there's little hope of getting to work correctly.  The fact that it
> _usually_ works with 24064-byte transfers is just a coincidence.
>

The other device which we understand to 100% in the end shows up that
the device does make a difference on that.

> Maybe with further testing you can characterize the device's behavior
> properly.  For example, does it require a certain minimum delay time
> between 24064-byte tranfers?  What is its overall data rate (this
> determines the maximum delay time)?
>

I think that would be some question for the IC design house but we are not
going to get the full details of everything as we only design the device itself.
There should be a certain reason why everything else than 24064 fails and the
windows driver from the chip vendor also uses that size.

Can't we just increase the buffer to get this work with linux, everything else
seems to be really hackish..
I just don't have any confidence that it will work out with those
suggestions since I
tried several days last week with Linux and MacOSX until I was told to
use the other
packet size this week.

Markus
--
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