[v2] ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109
diff mbox series

Message ID 20200810045319.128745-1-marcan@marcan.st
State New
Headers show
Series
  • [v2] ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109
Related show

Commit Message

Hector Martin Aug. 10, 2020, 4:53 a.m. UTC
Matching by device matches all interfaces, which breaks the video/HID
portions of the device depending on module load order.

Cc: stable@vger.kernel.org
Signed-off-by: Hector Martin <marcan@marcan.st>
---
 sound/usb/quirks-table.h | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

Comments

Takashi Iwai Aug. 10, 2020, 6:59 a.m. UTC | #1
On Mon, 10 Aug 2020 06:53:19 +0200,
Hector Martin wrote:
> 
> Matching by device matches all interfaces, which breaks the video/HID
> portions of the device depending on module load order.
> 
> Cc: stable@vger.kernel.org
> Signed-off-by: Hector Martin <marcan@marcan.st>

Thanks, applied now.


Takashi

Patch
diff mbox series

diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index 9092cc0aa807..7cbb3d591a7f 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -3645,7 +3645,13 @@  ALC1220_VB_DESKTOP(0x26ce, 0x0a01), /* Asrock TRX40 Creator */
  * with.
  */
 {
-	USB_DEVICE(0x534d, 0x2109),
+	.match_flags = USB_DEVICE_ID_MATCH_DEVICE |
+		       USB_DEVICE_ID_MATCH_INT_CLASS |
+		       USB_DEVICE_ID_MATCH_INT_SUBCLASS,
+	.idVendor = 0x534d,
+	.idProduct = 0x2109,
+	.bInterfaceClass = USB_CLASS_AUDIO,
+	.bInterfaceSubClass = USB_SUBCLASS_AUDIOCONTROL,
 	.driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) {
 		.vendor_name = "MacroSilicon",
 		.product_name = "MS2109",