All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Hofman <pavel.hofman@ivitera.com>
To: Greg KH <gregkh@linuxfoundation.org>
Cc: linux-usb@vger.kernel.org
Subject: Re: usb:gadget:f_uac2: EP OUT is adaptive instead of async
Date: Thu, 6 Feb 2020 17:09:49 +0100	[thread overview]
Message-ID: <d17089e1-31fa-b0ab-0e00-e868691faf2a@ivitera.com> (raw)
In-Reply-To: <20200206154125.GA3752902@kroah.com>


Dne 06. 02. 20 v 16:41 Greg KH napsal(a):
> On Thu, Feb 06, 2020 at 02:22:47PM +0100, Pavel Hofman wrote:
>> 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.
> 
> Patches work best, can you create them and test and then submit?
> 

No problem, I have tested for a few months. I just did not know if you 
would accept such change. I will send the patch then :-)

Thanks,

Pavel.

  reply	other threads:[~2020-02-06 16:09 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d17089e1-31fa-b0ab-0e00-e868691faf2a@ivitera.com \
    --to=pavel.hofman@ivitera.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-usb@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.