Daniel Mack wrote: > > > I have an untested patch ready which should add support for implicit > > > feedback, but I'm uncertain about the condition when to activate this > > > mode. For UAC2 devices, when the descriptors say so. For UAC1 devices, never (because UAC1 does not have this mode). It looks as if all UAC1-like devices that need this are actually marked as vendor-specific, so we have quirks for them anyway. > I attached a patch below, only compile-tested. Please also check the USB > ID again, as I'm not sure whether you sent the right lsusb dump (the > device name looks suspicious). The actual device name is correct; the "DFU" was taken by lsusb from the usb.ids file and is wrong. (I've submitted the correct name.) > static int snd_usb_audio_next_packet_size(struct snd_usb_substream *subs) > { > + frames = min(capture->frame_count, subs->maxframesize); > + capture->frame_count -= frames; This assumes that both streams are running continuously, and you have to make sure to start them at the same time to prevent the frame_count from overflowing or underflowing. In my UA-101 driver, I ensure that the buffer fill level is the same for both streams by submitting each playback packet with the same frame count as the corresponding capture packet; but I'm not sure which algorithm is more robust in practice. > + /* if this stream is in implicit feedback mode, start the > + * capture stream now as the playback stream relies on the > + * amount of data we see on the capture IN endpoint. > + */ > + if (subs->stream->implicit_feedback && !capture->running) { > + int ret; > + capture->ops.retire = retire_paused_capture_urb; set_interface? > + ret = start_urbs(capture, runtime); > + if (ret) > + return ret; > + } > + > return start_urbs(subs, runtime); I think you have to wait for the first capture packet to be received before you can start submitting playback URBs. Regards, Clemens _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel