[alsa-devel] [PATCH] ALSA: usb - Avoid unnecessary sample rate changes on USB 2.0 clock sources

Takashi Iwai tiwai at suse.de
Fri Apr 26 07:37:31 CEST 2013


At Thu, 25 Apr 2013 14:32:24 +0200,
David Henningsson wrote:
> 
> The Scarlett 2i2 seems to take almost 500 ms to set the sample rate,
> even if the clock is currently set to that value. This patch speeds
> up prepare of the device, by avoiding setting the clock to something
> it already is.
> 
> Signed-off-by: David Henningsson <david.henningsson at canonical.com>

Thanks, applied now.


Takashi

> ---
>  sound/usb/clock.c |    2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/sound/usb/clock.c b/sound/usb/clock.c
> index b0ec364..3a2ce39 100644
> --- a/sound/usb/clock.c
> +++ b/sound/usb/clock.c
> @@ -356,6 +356,8 @@ static int set_sample_rate_v2(struct snd_usb_audio *chip, int iface,
>  		return clock;
>  
>  	prev_rate = get_sample_rate_v2(chip, iface, fmt->altsetting, clock);
> +	if (prev_rate == rate)
> +		return 0;
>  
>  	cs_desc = snd_usb_find_clock_source(chip->ctrl_intf, clock);
>  	writeable = uac2_control_is_writeable(cs_desc->bmControls, UAC2_CS_CONTROL_SAM_FREQ - 1);
> -- 
> 1.7.9.5
> 


More information about the Alsa-devel mailing list