Hi,

this is v4 of the f_uac2 timing fixup series.

Changes from v3:

        * add another patch (3/5) to introduce agdev_to_uac2_opts()
          which is also needed in 5/5
        * patch 5/5 only:
          move from a pre-calculated sequence of packet lengths to
          an accumulator that sums up the residual values from the
          packet size calculation and adds an extra sample frame
          now and then when the accumulator has gathered enough bytes.

Changes from v2:

        * swap path 3 and 4, so that the ALSA buffer wrap around fix
          comes in first. It's not actually a bug fix for the current
          code, but more a preparation to allow for smaller packets.
        * use the p_ssize, p_chmask and p_srate for the length
          calculations
        * prepare a sequence of packet sizes to send, and alternate
          over them when sending the the IN packets. The actual commit
          log and the comments yield some more details on that.

Changes from v1:

        * drop UAC_EP_CS_ATTR_FILL_MAX approach and rather size the
          packets correctly
        * add a patch to fix buffer wrap problems in the ALSA buffer
          logic, which wasn't needed before

The first two patches are just cleanups.

Thanks to Alan Stern and Jassi Brar for the feedback!


Daniel

Daniel Mack (5):
  usb: gadget: f_uac2: restructure some code in afunc_set_alt()
  usb: gadget: f_uac2: add short-hand for 'dev'
  usb: gadget: f_uac2: introduce agdev_to_uac2_opts
  usb: gadget: f_uac2: handle partial dma area wrap
  usb: gadget: f_uac2: send reasonably sized packets

 drivers/usb/gadget/function/f_uac2.c | 157 ++++++++++++++++++++++++-----------
 1 file changed, 109 insertions(+), 48 deletions(-)

-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to