Skip to content

Commit cc8e910

Browse files
wuesttiwai
authored andcommitted
ALSA: usb-audio: Allow Focusrite devices to use low samplerates
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 <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Takashi Iwai <[email protected]>
1 parent d5f8458 commit cc8e910

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)