Skip to content

Commit c4791ce

Browse files
PpetterLtiwai
authored andcommitted
ALSA: usb-audio: add Studio 1824 support
Adapt the already implemented support for the Studio 1824c audio interface to the predecessor Studio 1824. Basically just a change adding the different hardware ID in the relevant places. Tested as much as possible. All implemented functionality seemingly works. Signed-off-by: Frederic Popp <frederic.l.popp@t-online.de> Link: https://patch.msgid.link/20260308153334.50433-2-frederic.l.popp@t-online.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
1 parent 9558a2c commit c4791ce

3 files changed

Lines changed: 9 additions & 0 deletions

File tree

sound/usb/format.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -455,6 +455,10 @@ static int parse_uac2_sample_rate_range(struct snd_usb_audio *chip,
455455
if (chip->usb_id == USB_ID(0x194f, 0x010d) &&
456456
!s1810c_valid_sample_rate(fp, rate))
457457
goto skip_rate;
458+
/* Filter out invalid rates on Presonus Studio 1824 */
459+
if (chip->usb_id == USB_ID(0x194f, 0x0107) &&
460+
!s1810c_valid_sample_rate(fp, rate))
461+
goto skip_rate;
458462

459463
/* Filter out invalid rates on Focusrite devices */
460464
if (USB_ID_VENDOR(chip->usb_id) == 0x1235 &&

sound/usb/mixer_quirks.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4477,6 +4477,9 @@ int snd_usb_mixer_apply_create_quirk(struct usb_mixer_interface *mixer)
44774477
case USB_ID(0x194f, 0x010d): /* Presonus Studio 1824c */
44784478
err = snd_sc1810_init_mixer(mixer);
44794479
break;
4480+
case USB_ID(0x194f, 0x0107): /* Presonus Studio 1824 */
4481+
err = snd_sc1810_init_mixer(mixer);
4482+
break;
44804483
case USB_ID(0x2a39, 0x3fb0): /* RME Babyface Pro FS */
44814484
err = snd_bbfpro_controls_create(mixer);
44824485
break;

sound/usb/mixer_s1810c.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,7 @@ static int snd_s1810c_init_mixer_maps(struct snd_usb_audio *chip)
362362
snd_s1810c_send_ctl_packet(dev, a, 3, 0, 1, MIXER_LEVEL_0DB);
363363
break;
364364

365+
case USB_ID(0x194f, 0x0107): /* 1824 */
365366
case USB_ID(0x194f, 0x010d): /* 1824c */
366367
/* Set all output faders to unity gain */
367368
a = SC1810C_SEL_OUTPUT;
@@ -685,6 +686,7 @@ int snd_sc1810_init_mixer(struct usb_mixer_interface *mixer)
685686
return ret;
686687

687688
break;
689+
case USB_ID(0x194f, 0x0107): /* Presonus Studio 1824 */
688690
case USB_ID(0x194f, 0x010d): /* Presonus Studio 1824c */
689691
ret = snd_s1810c_switch_init(mixer, &snd_s1824c_mono_sw);
690692
if (ret < 0)

0 commit comments

Comments
 (0)