All of lore.kernel.org
 help / color / mirror / Atom feed
* usb:gadget:f_uac2: EP OUT is adaptive instead of async
@ 2020-02-06 13:22 Pavel Hofman
  2020-02-06 15:41 ` Greg KH
  2020-02-11 16:10 ` Ruslan Bilovol
  0 siblings, 2 replies; 10+ messages in thread
From: Pavel Hofman @ 2020-02-06 13:22 UTC (permalink / raw)
  To: linux-usb

Hi,

The existing UAC2 implementation presents itself as asynchronous 
USB_ENDPOINT_SYNC_ASYNC 
https://github.com/torvalds/linux/blob/master/drivers/usb/gadget/function/f_uac2.c#L276 
+ 
https://github.com/torvalds/linux/blob/master/drivers/usb/gadget/function/f_uac2.c#L285 
.

However:
1) The function does not define any feedback endpoint

2) IMO in reality it is adaptive - the g_audio capture device accepts 
any data passed by the USB host, the USB host is the one which defines 
the data pace.

While Linux and reportedly OSX accept the async EP OUT without explicit 
feedback EP IN, Windows does not.

Simply changing USB_ENDPOINT_SYNC_ASYNC to USB_ENDPOINT_SYNC_ADAPTIVE 
for the FS and HS output endpoints fixes the windows problem and IMO 
corrects the config to reflect real function.

There are multiple projects underway adding the async feedback EP, but 
in the meantime I think the .bmAttributes information should be changed 
as above, making the device usable in Windows for everyone.

Thanks a lot for considering.

Best regards,

Pavel.

^ permalink raw reply	[flat|nested] 10+ messages in thread
[parent not found: <79D67DF9-2A12-40DE-AFF7-4FF68193AD1C@me.com>]

end of thread, other threads:[~2020-07-27 12:21 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-06 13:22 usb:gadget:f_uac2: EP OUT is adaptive instead of async Pavel Hofman
2020-02-06 15:41 ` Greg KH
2020-02-06 16:09   ` Pavel Hofman
2020-02-11 16:10 ` Ruslan Bilovol
2020-02-11 19:02   ` Pavel Hofman
2020-04-24 11:21     ` Pavel Hofman
2020-04-24 12:34       ` Ruslan Bilovol
2020-04-24 13:50         ` Pavel Hofman
     [not found] <79D67DF9-2A12-40DE-AFF7-4FF68193AD1C@me.com>
2020-07-25 10:24 ` Pavel Hofman
2020-07-27 12:21   ` Ruslan Bilovol

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.