Re: USB Bulk buffer size

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

 



On Tue, Oct 11, 2011 at 9:05 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> On Tue, 11 Oct 2011, Markus Rechberger wrote:
>
>> Hi Alan,
>>
>> On Tue, Oct 11, 2011 at 8:27 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
>> > On Tue, 11 Oct 2011, Markus Rechberger wrote:
>> >
>> >> Hi Greg, Alan,
>> >>
>> >> so I just received another device, the device supports Bulk transfers
>> >> only and only returns jerky data with Linux.
>> >> Unfortunately I guess it's based on the chipset since the datatransfer
>> >> needs the lowest common multiple buffersize.
>> >> The datapackets which I need are 188 bytes big, the EP size is 512
>> >> bytes, the buffer needed in order to get working data
>> >> is 24064 bytes which exceeds the current accepted buffersize in Linux.
>> >> I'm having exactly the same problem with MacOSX with lower
>> >> packetsizes, but OSX allows bigger packet sizes so it's easy to fix.
>> >> It's the same with Windows.
>> >>
>> >> Now is there any way to improve this situation?
>> >> Additional to the video service, the device itself uses software
>> >> demodulation for digital radio and has several vendor specific parts
>> >> in userspace.
>> >
>> > Instead of using a single 24064-byte transfer, you can try submitting a
>> > first transfer of 12288 bytes followed by a second transfer of 11776
>> > bytes.  This will mean the sixty-sixth 188-byte datapacket will be
>> > split between the two transfers, but that shouldn't cause any
>> > difficulty.
>> >
>> > (The numbers 12288 and 11776 are the two multiples of 512 closest to
>> > 12032 = 24064 / 2.)
>> >
>>
>> Just tried this,
>> this is the order how the read requests were submitted:
>>
>> BULK SIZE: 11776
>> BULK SIZE: 12288
>> BULK SIZE: 11776
>> BULK SIZE: 12288
>> BULK SIZE: 11776
>> BULK SIZE: 12288
>> BULK SIZE: 11776
>> BULK SIZE: 12288
>> BULK SIZE: 11776
>> BULK SIZE: 12288
>> BULK SIZE: 11776
>> BULK SIZE: 12288
>> BULK SIZE: 11776
>> BULK SIZE: 12288
>>
>> Same issue on Mac and Linux, the returned data is damaged.
>
> Damaged in what way?

http://sundtek.de/images/dtvjitter2.jpg

> This should return exactly the same data as seven
> reads of 24064 bytes.  The device doesn't see that URB boundaries; all
> it sees are the 512-byte packet boundaries.
>
> Alan Stern
>
>
--
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