Explorar o código

ALSA: usb-audio - Quirk for Serato phono

Ignore errors (wrong usb interface data) found when using the serato
scratch live box with alsa

Thus the alsa controls can be accessed (beware: they don't work though -
but at least it's one ugly error message less)

Signed-off-by: Andreas Bergmeier <lcid-fire@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Andreas Bergmeier %!s(int64=16) %!d(string=hai) anos
pai
achega
8693290b90
Modificáronse 1 ficheiros con 21 adicións e 0 borrados
  1. 21 0
      sound/usb/usbmixer_maps.c

+ 21 - 0
sound/usb/usbmixer_maps.c

@@ -261,6 +261,22 @@ static struct usbmix_name_map aureon_51_2_map[] = {
 	{} /* terminator */
 	{} /* terminator */
 };
 };
 
 
+static struct usbmix_name_map scratch_live_map[] = {
+	/* 1: IT Line 1 (USB streaming) */
+	/* 2: OT Line 1 (Speaker) */
+	/* 3: IT Line 1 (Line connector) */
+	{ 4, "Line 1 In" }, /* FU */
+	/* 5: OT Line 1 (USB streaming) */
+	/* 6: IT Line 2 (USB streaming) */
+	/* 7: OT Line 2 (Speaker) */
+	/* 8: IT Line 2 (Line connector) */
+	{ 9, "Line 2 In" }, /* FU */
+	/* 10: OT Line 2 (USB streaming) */
+	/* 11: IT Mic (Line connector) */
+	/* 12: OT Mic (USB streaming) */
+	{ 0 } /* terminator */
+};
+
 /*
 /*
  * Control map entries
  * Control map entries
  */
  */
@@ -316,6 +332,11 @@ static struct usbmix_ctl_map usbmix_ctl_maps[] = {
 		.id = USB_ID(0x0ccd, 0x0028),
 		.id = USB_ID(0x0ccd, 0x0028),
 		.map = aureon_51_2_map,
 		.map = aureon_51_2_map,
 	},
 	},
+	{
+		.id = USB_ID(0x13e5, 0x0001),
+		.map = scratch_live_map,
+		.ignore_ctl_error = 1,
+	},
 	{ 0 } /* terminator */
 	{ 0 } /* terminator */
 };
 };