Commit fa92dd77 authored by David Henningsson's avatar David Henningsson Committed by Takashi Iwai
Browse files

ALSA: usb - Avoid unnecessary sample rate changes on USB 2.0 clock sources



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: default avatarDavid Henningsson <david.henningsson@canonical.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 4b417cf0
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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);