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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html