Skip to content

Commit 76ff643

Browse files
wuestgregkh
authored andcommitted
ALSA: usb-audio: Allow Focusrite devices to use low samplerates
[ Upstream commit cc8e910 ] Commit 05f254a ("ALSA: usb-audio: Improve filtering of sample rates on Focusrite devices") changed the check for max_rate in a way which was overly restrictive, forcing devices to use very high samplerates if they support them, despite support existing for lower rates as well. This maintains the intended outcome (ensuring samplerates selected are supported) while allowing devices with higher maximum samplerates to be opened at all supported samplerates. This patch was tested with a Clarett+ 8Pre USB Fixes: 05f254a ("ALSA: usb-audio: Improve filtering of sample rates on Focusrite devices") Signed-off-by: Tina Wuest <tina@wuest.me> Link: https://patch.msgid.link/20250901092024.140993-1-tina@wuest.me Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent 1b1a337 commit 76ff643

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

sound/usb/format.c

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -327,12 +327,16 @@ static bool focusrite_valid_sample_rate(struct snd_usb_audio *chip,
327327
max_rate = combine_quad(&fmt[6]);
328328

329329
switch (max_rate) {
330+
case 192000:
331+
if (rate == 176400 || rate == 192000)
332+
return true;
333+
fallthrough;
334+
case 96000:
335+
if (rate == 88200 || rate == 96000)
336+
return true;
337+
fallthrough;
330338
case 48000:
331339
return (rate == 44100 || rate == 48000);
332-
case 96000:
333-
return (rate == 88200 || rate == 96000);
334-
case 192000:
335-
return (rate == 176400 || rate == 192000);
336340
default:
337341
usb_audio_info(chip,
338342
"%u:%d : unexpected max rate: %u\n",

0 commit comments

Comments
 (0)