Re: Overly conservative xHCI bandwidth estimation

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

 





On 09/24/2015 02:50 PM, Steinar H. Gunderson wrote:
On Thu, Sep 24, 2015 at 02:09:41PM +0200, Krzysztof Opasiak wrote:
Let's start from the beginning. Your device use ISO endpoints which means
that host allocates specific amount of bandwidth on the bus. More over,
interfaces in your devices has many alternate settings. Probably each of
them reserves different amount of bandwidth. When you connect your first
device, driver selects the highest possible quality and allocate maximum
bandwidth. When you connect second device driver tries to select altsetting
for which there is enough bandwidth left but as you see this fail. So we
get:

I'm sorry, I should have mentioned an important detail here. There is no
kernel driver for my card; I drive it from userspace with libusb-1.0. So I'm
the one setting the alternates. The cards start out in alternate 0, so the
scenario you're outlining shouldn't exist; and indeed, the setting the first
card to 4 (the low-bandwidth alternate) works just fine, it's setting the
second one that's the problem.


But still the problem may exist. Is the 2.16 GBit bandwidth for 4th altset?

Remember that according to USB spec not whole bandwidth can be used by iso transfers (in usb 2.0 the limit is 80%, don't know how it looks in 3.0). So if 2.16 is lowest possible bandwidth for your device you have 2.16 x 2 = 4.32 but 80% * 5 = 4...

--
Krzysztof Opasiak
Samsung R&D Institute Poland
Samsung Electronics
--
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