Commit 75cdae44 authored by Roy Vegard Ovesen's avatar Roy Vegard Ovesen Committed by Takashi Iwai
Browse files

ALSA: usb-audio: don't log messages meant for 1810c when initializing 1824c



The log messages for the PreSonus STUDIO 1810c about
device_setup are not applicable to the 1824c, and should
not be logged when 1824c initializes.

Refactor from if statement to switch statement as there
might be more STUDIO series devices added later.

Fixes: 08056455 ("ALSA: usb-audio: enable support for Presonus Studio 1824c within 1810c file")
Signed-off-by: default avatarRoy Vegard Ovesen <roy.vegard.ovesen@gmail.com>
Link: https://patch.msgid.link/aPaYTP7ceuABf8c7@ark


Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 7963891f
Loading
Loading
Loading
Loading
+18 −15
Original line number Diff line number Diff line
@@ -597,15 +597,6 @@ int snd_sc1810_init_mixer(struct usb_mixer_interface *mixer)
	if (!list_empty(&chip->mixer_list))
		return 0;

	dev_info(&dev->dev,
		 "Presonus Studio 1810c, device_setup: %u\n", chip->setup);
	if (chip->setup == 1)
		dev_info(&dev->dev, "(8out/18in @ 48kHz)\n");
	else if (chip->setup == 2)
		dev_info(&dev->dev, "(6out/8in @ 192kHz)\n");
	else
		dev_info(&dev->dev, "(8out/14in @ 96kHz)\n");

	ret = snd_s1810c_init_mixer_maps(chip);
	if (ret < 0)
		return ret;
@@ -634,16 +625,28 @@ int snd_sc1810_init_mixer(struct usb_mixer_interface *mixer)
	if (ret < 0)
		return ret;

	// The 1824c has a Mono Main switch instead of a
	// A/B select switch.
	if (mixer->chip->usb_id == USB_ID(0x194f, 0x010d)) {
		ret = snd_s1810c_switch_init(mixer, &snd_s1824c_mono_sw);
	switch (chip->usb_id) {
	case USB_ID(0x194f, 0x010c): /* Presonus Studio 1810c */
		dev_info(&dev->dev,
			 "Presonus Studio 1810c, device_setup: %u\n", chip->setup);
		if (chip->setup == 1)
			dev_info(&dev->dev, "(8out/18in @ 48kHz)\n");
		else if (chip->setup == 2)
			dev_info(&dev->dev, "(6out/8in @ 192kHz)\n");
		else
			dev_info(&dev->dev, "(8out/14in @ 96kHz)\n");

		ret = snd_s1810c_switch_init(mixer, &snd_s1810c_ab_sw);
		if (ret < 0)
			return ret;
	} else if (mixer->chip->usb_id == USB_ID(0x194f, 0x010c)) {
		ret = snd_s1810c_switch_init(mixer, &snd_s1810c_ab_sw);

		break;
	case USB_ID(0x194f, 0x010d): /* Presonus Studio 1824c */
		ret = snd_s1810c_switch_init(mixer, &snd_s1824c_mono_sw);
		if (ret < 0)
			return ret;

		break;
	}

	return ret;