[PATCH] ALSA: usb-audio: Fix sample rates for PreSonus AudioBox USB

Trevor Vorhees via B4 Relay posted 1 patch 1 month, 2 weeks ago
sound/usb/quirks-table.h | 10 ++++++++++
1 file changed, 10 insertions(+)
[PATCH] ALSA: usb-audio: Fix sample rates for PreSonus AudioBox USB
Posted by Trevor Vorhees via B4 Relay 1 month, 2 weeks ago
From: Trevor Vorhees <vorhees-work@proton.me>

The fixed audio formats for the PreSonus AudioBox USB specify a discrete
rate mask but leave nr_rates at zero and rate_table unset.  find_format()
therefore rejects every requested rate, preventing the playback and
capture streams from being opened.

Add the advertised 44100 and 48000 Hz rates to both streams and report
their 24 significant bits.

Fixes: 34fe4a9df247 ("ALSA: usb-audio: Add quirk for PreSonus AudioBox USB")
Cc: stable@vger.kernel.org
Signed-off-by: Trevor Vorhees <vorhees-work@proton.me>
---
Tested with a PreSonus AudioBox USB (194f:0301) on Linux
7.1.8-zen1-3-zen. Playback and capture streams opened successfully at
both 44100 and 48000 Hz after applying the patch.
---
 sound/usb/quirks-table.h | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index 71444c28..9a28d7c6 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -2692,6 +2692,7 @@ YAMAHA_DEVICE(0x7010, "UB99"),
 			{
 				QUIRK_DATA_AUDIOFORMAT(2) {
 					.formats = SNDRV_PCM_FMTBIT_S24_3LE,
+					.fmt_bits = 24,
 					.channels = 2,
 					.iface = 2,
 					.altsetting = 1,
@@ -2703,11 +2704,16 @@ YAMAHA_DEVICE(0x7010, "UB99"),
 						 SNDRV_PCM_RATE_48000,
 					.rate_min = 44100,
 					.rate_max = 48000,
+					.nr_rates = 2,
+					.rate_table = (unsigned int[]) {
+						44100, 48000
+					},
 				}
 			},
 			{
 				QUIRK_DATA_AUDIOFORMAT(3) {
 					.formats = SNDRV_PCM_FMTBIT_S24_3LE,
+					.fmt_bits = 24,
 					.channels = 2,
 					.iface = 3,
 					.altsetting = 1,
@@ -2719,6 +2725,10 @@ YAMAHA_DEVICE(0x7010, "UB99"),
 						 SNDRV_PCM_RATE_48000,
 					.rate_min = 44100,
 					.rate_max = 48000,
+					.nr_rates = 2,
+					.rate_table = (unsigned int[]) {
+						44100, 48000
+					},
 				}
 			},
 			QUIRK_COMPOSITE_END

---
base-commit: f5bbbfec59b4e2fb7520a91de3df8a6174325d6a
change-id: 20260811-audiobox-usb-fix-20af9593ee27

Best regards,
--  
Trevor Vorhees <vorhees-work@proton.me>
Re: [PATCH] ALSA: usb-audio: Fix sample rates for PreSonus AudioBox USB
Posted by Takashi Iwai 1 month, 2 weeks ago
On Wed, 12 Aug 2026 02:44:10 +0200,
Trevor Vorhees via B4 Relay wrote:
> 
> From: Trevor Vorhees <vorhees-work@proton.me>
> 
> The fixed audio formats for the PreSonus AudioBox USB specify a discrete
> rate mask but leave nr_rates at zero and rate_table unset.  find_format()
> therefore rejects every requested rate, preventing the playback and
> capture streams from being opened.
> 
> Add the advertised 44100 and 48000 Hz rates to both streams and report
> their 24 significant bits.
> 
> Fixes: 34fe4a9df247 ("ALSA: usb-audio: Add quirk for PreSonus AudioBox USB")
> Cc: stable@vger.kernel.org
> Signed-off-by: Trevor Vorhees <vorhees-work@proton.me>
> ---
> Tested with a PreSonus AudioBox USB (194f:0301) on Linux
> 7.1.8-zen1-3-zen. Playback and capture streams opened successfully at
> both 44100 and 48000 Hz after applying the patch.

Applied to for-next branch now.  Thanks.


Takashi