В Вт, 27/02/2024 в 21:27 +0300, Alexander Tsoy пишет:
В Пн, 26/02/2024 в 13:05 +0000, Ian Malone пишет:
---------->%-----------
In this case the dmesg output is clear after device connection. This seems like some kind of bandwidth calculation problem in snd_usb_audio. I've tried building a kernel and modifying various of the defines in sound/usb/card.h (currently MAX_PACKS 4 and MAX_PACKS_HS (MAX_PACKS * 4), compared to 6 and *8) but not hit on a winning formula yet. Is there any information I could collect to try to fix this?
I always had bandwidth allocation problems with full-speed isochronous devices connected directly to xhci host controllers (and no other devices connected!). The same devices works with ehci host controllers without issues. So I think the problem is somewhere in the xhci code.
Also if device is connected to the hub which is connected to xhci controller, everything also works. This is why rear ports works for you
- they are connected to the internal hub.
And this is because transaction translation is performed on the hub, so the controller is only dealing with high-speed transfers.
BTW, I just tested all mentioned connection scenarios with Audiotrak Prodigy CUBE. And indeed I get "Not enough bandwidth" errors in duplex mode only if it is connected directly to xhci controller.