ALSA: usb-audio: Add a quirk for Yamaha YIT-W12TX transmitter
[platform/kernel/linux-starfive.git] / sound / usb / quirks.c
index 4e64842..be0ce1f 100644 (file)
@@ -1387,7 +1387,7 @@ free_buf:
 
 static int snd_usb_motu_m_series_boot_quirk(struct usb_device *dev)
 {
-       msleep(2000);
+       msleep(4000);
 
        return 0;
 }
@@ -1630,7 +1630,7 @@ int snd_usb_apply_boot_quirk_once(struct usb_device *dev,
                                  unsigned int id)
 {
        switch (id) {
-       case USB_ID(0x07fd, 0x0008): /* MOTU M Series */
+       case USB_ID(0x07fd, 0x0008): /* MOTU M Series, 1st hardware version */
                return snd_usb_motu_m_series_boot_quirk(dev);
        }
 
@@ -2031,6 +2031,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
                   QUIRK_FLAG_CTL_MSG_DELAY_1M | QUIRK_FLAG_IGNORE_CTL_ERROR),
        DEVICE_FLG(0x0499, 0x1509, /* Steinberg UR22 */
                   QUIRK_FLAG_GENERIC_IMPLICIT_FB),
+       DEVICE_FLG(0x0499, 0x3108, /* Yamaha YIT-W12TX */
+                  QUIRK_FLAG_GET_SAMPLE_RATE),
        DEVICE_FLG(0x04d8, 0xfeea, /* Benchmark DAC1 Pre */
                   QUIRK_FLAG_GET_SAMPLE_RATE),
        DEVICE_FLG(0x04e8, 0xa051, /* Samsung USBC Headset (AKG) */
@@ -2073,6 +2075,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
                   QUIRK_FLAG_GENERIC_IMPLICIT_FB),
        DEVICE_FLG(0x0763, 0x2031, /* M-Audio Fast Track C600 */
                   QUIRK_FLAG_GENERIC_IMPLICIT_FB),
+       DEVICE_FLG(0x07fd, 0x000b, /* MOTU M Series 2nd hardware revision */
+                  QUIRK_FLAG_CTL_MSG_DELAY_1M),
        DEVICE_FLG(0x08bb, 0x2702, /* LineX FM Transmitter */
                   QUIRK_FLAG_IGNORE_CTL_ERROR),
        DEVICE_FLG(0x0951, 0x16ad, /* Kingston HyperX */
@@ -2220,6 +2224,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
                   QUIRK_FLAG_DSD_RAW),
        VENDOR_FLG(0x2ab6, /* T+A devices */
                   QUIRK_FLAG_DSD_RAW),
+       VENDOR_FLG(0x2afd, /* McIntosh Laboratory, Inc. */
+                  QUIRK_FLAG_DSD_RAW),
        VENDOR_FLG(0x2d87, /* Cayin device */
                   QUIRK_FLAG_DSD_RAW),
        VENDOR_FLG(0x3336, /* HEM devices */