Lines Matching +full:0 +full:x1901
41 for (quirk = quirk_comp->data; quirk->ifnum >= 0; ++quirk) { in create_composite_quirk()
49 if (err < 0) in create_composite_quirk()
53 for (quirk = quirk_comp->data; quirk->ifnum >= 0; ++quirk) { in create_composite_quirk()
61 if (err < 0) in create_composite_quirk()
66 return 0; in create_composite_quirk()
74 return 0; in ignore_interface_quirk()
111 if (chip->usb_id == USB_ID(0x1686, 0x00dd)) /* Zoom R16/24 */ in create_standard_audio_quirk()
114 alts = &iface->altsetting[0]; in create_standard_audio_quirk()
117 if (err < 0) { in create_standard_audio_quirk()
123 usb_set_interface(chip->dev, altsd->bInterfaceNumber, 0); in create_standard_audio_quirk()
124 return 0; in create_standard_audio_quirk()
150 if (fp->nr_rates > 0) { in create_fixed_stream_quirk()
163 if (err < 0) in create_fixed_stream_quirk()
165 if (fp->iface != get_iface_desc(&iface->altsetting[0])->bInterfaceNumber || in create_fixed_stream_quirk()
179 if (fp->datainterval == 0) in create_fixed_stream_quirk()
181 if (fp->maxpacksize == 0) in create_fixed_stream_quirk()
182 fp->maxpacksize = le16_to_cpu(get_endpoint(alts, 0)->wMaxPacketSize); in create_fixed_stream_quirk()
183 usb_set_interface(chip->dev, fp->iface, 0); in create_fixed_stream_quirk()
186 return 0; in create_fixed_stream_quirk()
221 epd = get_endpoint(alts, 0); in create_auto_pcm_quirk()
283 roland_desc, 0xf1); in create_roland_midi_quirk()
286 if (roland_desc[0] < 6 || roland_desc[3] != 2) in create_roland_midi_quirk()
309 msepd = (struct usb_ms_endpoint_descriptor *)alts->endpoint[0].extra; in create_std_midi_quirk()
310 if (alts->endpoint[0].extralen < 4 || in create_std_midi_quirk()
330 alts = &iface->altsetting[0]; in create_auto_midi_quirk()
336 epd = get_endpoint(alts, 0); in create_auto_midi_quirk()
342 case 0x0499: /* Yamaha */ in create_auto_midi_quirk()
347 case 0x0582: /* Roland */ in create_auto_midi_quirk()
378 if (err < 0) in create_autodetect_quirks()
386 for (ifnum = 0; ifnum < ifcount; ifnum++) { in create_autodetect_quirks()
387 if (ifnum == probed_ifnum || quirk->ifnum >= 0) in create_autodetect_quirks()
397 if (err >= 0) { in create_autodetect_quirks()
400 if (err < 0) in create_autodetect_quirks()
405 return 0; in create_autodetect_quirks()
438 .out_cables = 0x0003, in create_uaxx_quirk()
439 .in_cables = 0x0003 in create_uaxx_quirk()
446 .out_cables = 0x0001, in create_uaxx_quirk()
447 .in_cables = 0x0001 in create_uaxx_quirk()
454 chip->usb_id == USB_ID(0x0582, 0x002b) in create_uaxx_quirk()
469 fp->endpoint = get_endpoint(alts, 0)->bEndpointAddress; in create_uaxx_quirk()
470 fp->ep_attr = get_endpoint(alts, 0)->bmAttributes; in create_uaxx_quirk()
471 fp->datainterval = 0; in create_uaxx_quirk()
472 fp->maxpacksize = le16_to_cpu(get_endpoint(alts, 0)->wMaxPacketSize); in create_uaxx_quirk()
476 case 0x120: in create_uaxx_quirk()
479 case 0x138: in create_uaxx_quirk()
480 case 0x140: in create_uaxx_quirk()
483 case 0x258: in create_uaxx_quirk()
484 case 0x260: in create_uaxx_quirk()
496 if (err < 0) { in create_uaxx_quirk()
501 usb_set_interface(chip->dev, fp->iface, 0); in create_uaxx_quirk()
502 return 0; in create_uaxx_quirk()
513 if (quirk->ifnum < 0) in create_standard_mixer_quirk()
514 return 0; in create_standard_mixer_quirk()
516 return snd_usb_create_mixer(chip, quirk->ifnum, 0); in create_standard_mixer_quirk()
604 err = snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev,0), in snd_usb_extigy_boot_quirk()
605 0x10, 0x43, 0x0001, 0x000a, NULL, 0); in snd_usb_extigy_boot_quirk()
606 if (err < 0) in snd_usb_extigy_boot_quirk()
608 err = usb_get_descriptor(dev, USB_DT_DEVICE, 0, in snd_usb_extigy_boot_quirk()
611 if (err < 0) in snd_usb_extigy_boot_quirk()
614 if (err < 0) in snd_usb_extigy_boot_quirk()
620 return 0; in snd_usb_extigy_boot_quirk()
627 snd_usb_ctl_msg(dev, usb_rcvctrlpipe(dev, 0), 0x2a, in snd_usb_audigy2nx_boot_quirk()
629 0, 0, &buf, 1); in snd_usb_audigy2nx_boot_quirk()
630 if (buf == 0) { in snd_usb_audigy2nx_boot_quirk()
631 snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), 0x29, in snd_usb_audigy2nx_boot_quirk()
633 1, 2000, NULL, 0); in snd_usb_audigy2nx_boot_quirk()
636 return 0; in snd_usb_audigy2nx_boot_quirk()
652 if (err < 0) in snd_usb_fasttrackpro_boot_quirk()
663 return 0; in snd_usb_fasttrackpro_boot_quirk()
673 buf[0] = 0x20; in snd_usb_cm106_write_int_reg()
674 buf[1] = value & 0xff; in snd_usb_cm106_write_int_reg()
675 buf[2] = (value >> 8) & 0xff; in snd_usb_cm106_write_int_reg()
677 return snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), USB_REQ_SET_CONFIGURATION, in snd_usb_cm106_write_int_reg()
679 0, 0, &buf, 4); in snd_usb_cm106_write_int_reg()
688 return snd_usb_cm106_write_int_reg(dev, 2, 0x8004); in snd_usb_cm106_boot_quirk()
698 #define CM6206_REG0_SPDIFO_CAT_CODE_GENERAL (0 << 4)
702 #define CM6206_REG0_SPDIFO_PRO_FORMAT BIT(0)
718 #define CM6206_REG1_SPDIFI_MIX BIT(0)
721 #define CM6206_REG2_HEADP_SEL_SIDE_CHANNELS (0 << 13)
736 #define CM6206_REG2_MCUCLKSEL_1_5_MHZ (0)
745 #define CM6206_REG3_SPDIFI_RATE_44_1K BIT(0 << 7)
754 #define CM6206_REG3_SPDIFI_CANREC BIT(0)
759 #define CM6206_REG5_SPDIFO_SEL_FRONT (0 << 9)
769 #define CM6206_REG5_T_SEL_DSDAD_NORMAL 0
777 int err = 0, reg; in snd_usb_cm6206_boot_quirk()
815 0x0000, in snd_usb_cm6206_boot_quirk()
820 for (reg = 0; reg < ARRAY_SIZE(val); reg++) { in snd_usb_cm6206_boot_quirk()
822 if (err < 0) in snd_usb_cm6206_boot_quirk()
835 u8 buf[2] = { 0x74, 0xe3 }; in snd_usb_gamecon780_boot_quirk()
836 return snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), UAC_SET_CUR, in snd_usb_gamecon780_boot_quirk()
849 usb_set_interface(dev, 0, 1); in snd_usb_novation_boot_quirk()
850 return 0; in snd_usb_novation_boot_quirk()
856 * acknowledge by sending a sysex on endpoint 0x85 and by displaying a USB
864 static const u8 seq[] = { 0x4e, 0x73, 0x52, 0x01 }; in snd_usb_accessmusic_boot_quirk()
867 if (usb_pipe_type_check(dev, usb_sndintpipe(dev, 0x05))) in snd_usb_accessmusic_boot_quirk()
872 err = usb_interrupt_msg(dev, usb_sndintpipe(dev, 0x05), buf, in snd_usb_accessmusic_boot_quirk()
875 if (err < 0) in snd_usb_accessmusic_boot_quirk()
878 return 0; in snd_usb_accessmusic_boot_quirk()
896 ret = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), in snd_usb_nativeinstruments_boot_quirk()
897 0xaf, USB_TYPE_VENDOR | USB_RECIP_DEVICE, in snd_usb_nativeinstruments_boot_quirk()
898 1, 0, NULL, 0, 1000); in snd_usb_nativeinstruments_boot_quirk()
900 if (ret < 0) in snd_usb_nativeinstruments_boot_quirk()
917 srate[0] = 0x80; in mbox2_setup_48_24_magic()
918 srate[1] = 0xbb; in mbox2_setup_48_24_magic()
919 srate[2] = 0x00; in mbox2_setup_48_24_magic()
922 snd_usb_ctl_msg(dev, usb_rcvctrlpipe(dev, 0), in mbox2_setup_48_24_magic()
923 0x01, 0x22, 0x0100, 0x0085, &temp, 0x0003); in mbox2_setup_48_24_magic()
924 snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), in mbox2_setup_48_24_magic()
925 0x81, 0xa2, 0x0100, 0x0085, &srate, 0x0003); in mbox2_setup_48_24_magic()
926 snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), in mbox2_setup_48_24_magic()
927 0x81, 0xa2, 0x0100, 0x0086, &srate, 0x0003); in mbox2_setup_48_24_magic()
928 snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), in mbox2_setup_48_24_magic()
929 0x81, 0xa2, 0x0100, 0x0003, &srate, 0x0003); in mbox2_setup_48_24_magic()
938 #define MBOX2_BOOT_LOADING 0x01 /* Hard coded into the device */
939 #define MBOX2_BOOT_READY 0x02 /* Hard coded into the device */
945 u8 bootresponse[0x12]; in snd_usb_mbox2_boot_quirk()
958 count = 0; in snd_usb_mbox2_boot_quirk()
959 bootresponse[0] = MBOX2_BOOT_LOADING; in snd_usb_mbox2_boot_quirk()
960 while ((bootresponse[0] == MBOX2_BOOT_LOADING) && (count < 10)) { in snd_usb_mbox2_boot_quirk()
962 snd_usb_ctl_msg(dev, usb_rcvctrlpipe(dev, 0), in snd_usb_mbox2_boot_quirk()
964 0x85, 0xc0, 0x0001, 0x0000, &bootresponse, 0x0012); in snd_usb_mbox2_boot_quirk()
965 if (bootresponse[0] == MBOX2_BOOT_READY) in snd_usb_mbox2_boot_quirk()
971 if (bootresponse[0] != MBOX2_BOOT_READY) { in snd_usb_mbox2_boot_quirk()
972 dev_err(&dev->dev, "Unknown bootresponse=%d, or timed out, ignoring device.\n", bootresponse[0]); in snd_usb_mbox2_boot_quirk()
978 err = usb_get_descriptor(dev, USB_DT_DEVICE, 0, in snd_usb_mbox2_boot_quirk()
981 if (err < 0) in snd_usb_mbox2_boot_quirk()
985 if (err < 0) in snd_usb_mbox2_boot_quirk()
994 return 0; /* Successful boot */ in snd_usb_mbox2_boot_quirk()
1008 err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), in snd_usb_axefx3_boot_quirk()
1010 1, 1, NULL, 0, 120000); in snd_usb_axefx3_boot_quirk()
1011 if (err < 0) { in snd_usb_axefx3_boot_quirk()
1019 err = usb_set_interface(dev, 1, 0); in snd_usb_axefx3_boot_quirk()
1020 if (err < 0) in snd_usb_axefx3_boot_quirk()
1024 return 0; in snd_usb_axefx3_boot_quirk()
1035 if (usb_pipe_type_check(dev, usb_sndintpipe(dev, 0x01))) in snd_usb_motu_microbookii_communicate()
1037 err = usb_interrupt_msg(dev, usb_sndintpipe(dev, 0x01), buf, *length, in snd_usb_motu_microbookii_communicate()
1039 if (err < 0) in snd_usb_motu_microbookii_communicate()
1045 memset(buf, 0, buf_size); in snd_usb_motu_microbookii_communicate()
1047 if (usb_pipe_type_check(dev, usb_rcvintpipe(dev, 0x82))) in snd_usb_motu_microbookii_communicate()
1049 err = usb_interrupt_msg(dev, usb_rcvintpipe(dev, 0x82), buf, buf_size, in snd_usb_motu_microbookii_communicate()
1051 if (err < 0) in snd_usb_motu_microbookii_communicate()
1058 return 0; in snd_usb_motu_microbookii_communicate()
1063 int err, actual_length, poll_attempts = 0; in snd_usb_motu_microbookii_boot_quirk()
1064 static const u8 set_samplerate_seq[] = { 0x00, 0x00, 0x00, 0x00, in snd_usb_motu_microbookii_boot_quirk()
1065 0x00, 0x00, 0x0b, 0x14, in snd_usb_motu_microbookii_boot_quirk()
1066 0x00, 0x00, 0x00, 0x01 }; in snd_usb_motu_microbookii_boot_quirk()
1067 static const u8 poll_ready_seq[] = { 0x00, 0x04, 0x00, 0x00, in snd_usb_motu_microbookii_boot_quirk()
1068 0x00, 0x00, 0x0b, 0x18 }; in snd_usb_motu_microbookii_boot_quirk()
1082 if (err < 0) { in snd_usb_motu_microbookii_boot_quirk()
1098 memset(buf, 0, MICROBOOK_BUF_SIZE); in snd_usb_motu_microbookii_boot_quirk()
1104 if (err < 0) { in snd_usb_motu_microbookii_boot_quirk()
1113 * XX 06 00 00 00 00 0b 18 00 00 00 01 in snd_usb_motu_microbookii_boot_quirk()
1134 ret = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), in snd_usb_motu_m_series_boot_quirk()
1136 0x0, 0, NULL, 0, 1000); in snd_usb_motu_m_series_boot_quirk()
1138 if (ret < 0) in snd_usb_motu_m_series_boot_quirk()
1143 ret = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), in snd_usb_motu_m_series_boot_quirk()
1145 0x20, 0, NULL, 0, 1000); in snd_usb_motu_m_series_boot_quirk()
1147 if (ret < 0) in snd_usb_motu_m_series_boot_quirk()
1150 return 0; in snd_usb_motu_m_series_boot_quirk()
1156 #define MAUDIO_SET 0x01 /* parse device_setup */
1157 #define MAUDIO_SET_COMPATIBLE 0x80 /* use only "win-compatible" interfaces */
1158 #define MAUDIO_SET_DTS 0x02 /* enable DTS Digital Output */
1159 #define MAUDIO_SET_96K 0x04 /* 48-96kHz rate if set, 8-48kHz otherwise */
1160 #define MAUDIO_SET_24B 0x08 /* 24bits sample if set, 16bits otherwise */
1161 #define MAUDIO_SET_DI 0x10 /* enable Digital Input */
1162 #define MAUDIO_SET_MASK 0x1f /* bit mask for setup value */
1163 #define MAUDIO_SET_24B_48K_DI 0x19 /* 24bits+48kHz+Digital Input */
1164 #define MAUDIO_SET_24B_48K_NOTDI 0x09 /* 24bits+48kHz+No Digital Input */
1165 #define MAUDIO_SET_16B_48K_DI 0x11 /* 16bits+48kHz+Digital Input */
1166 #define MAUDIO_SET_16B_48K_NOTDI 0x01 /* 16bits+48kHz+No Digital Input */
1171 /* Reset ALL ifaces to 0 altsetting. in quattro_skip_setting_quirk()
1174 usb_set_interface(chip->dev, iface, 0); in quattro_skip_setting_quirk()
1197 return 0; /* keep this altsetting */ in quattro_skip_setting_quirk()
1204 /* Reset ALL ifaces to 0 altsetting. in audiophile_skip_setting_quirk()
1207 usb_set_interface(chip->dev, iface, 0); in audiophile_skip_setting_quirk()
1226 return 0; /* keep this altsetting */ in audiophile_skip_setting_quirk()
1232 /* Reset ALL ifaces to 0 altsetting. in fasttrackpro_skip_setting_quirk()
1235 usb_set_interface(chip->dev, iface, 0); in fasttrackpro_skip_setting_quirk()
1264 return 0; /* keep this altsetting */ in fasttrackpro_skip_setting_quirk()
1289 if ((chip->setup == 0 || chip->setup > 2) && altno != 2) in s1810c_skip_setting_quirk()
1296 return 0; in s1810c_skip_setting_quirk()
1304 if (chip->usb_id == USB_ID(0x0763, 0x2003)) in snd_usb_apply_interface_quirk()
1307 if (chip->usb_id == USB_ID(0x0763, 0x2001)) in snd_usb_apply_interface_quirk()
1310 if (chip->usb_id == USB_ID(0x0763, 0x2012)) in snd_usb_apply_interface_quirk()
1313 if (chip->usb_id == USB_ID(0x194f, 0x010c)) in snd_usb_apply_interface_quirk()
1317 return 0; in snd_usb_apply_interface_quirk()
1326 case USB_ID(0x041e, 0x3000): in snd_usb_apply_boot_quirk()
1331 case USB_ID(0x041e, 0x3020): in snd_usb_apply_boot_quirk()
1335 case USB_ID(0x10f5, 0x0200): in snd_usb_apply_boot_quirk()
1339 case USB_ID(0x0d8c, 0x0102): in snd_usb_apply_boot_quirk()
1341 case USB_ID(0x0ccd, 0x00b1): /* Terratec Aureon 7.1 USB */ in snd_usb_apply_boot_quirk()
1344 case USB_ID(0x0dba, 0x3000): in snd_usb_apply_boot_quirk()
1348 case USB_ID(0x1235, 0x0010): /* Focusrite Novation Saffire 6 USB */ in snd_usb_apply_boot_quirk()
1349 case USB_ID(0x1235, 0x0018): /* Focusrite Novation Twitch */ in snd_usb_apply_boot_quirk()
1352 case USB_ID(0x133e, 0x0815): in snd_usb_apply_boot_quirk()
1356 case USB_ID(0x17cc, 0x1000): /* Komplete Audio 6 */ in snd_usb_apply_boot_quirk()
1357 case USB_ID(0x17cc, 0x1010): /* Traktor Audio 6 */ in snd_usb_apply_boot_quirk()
1358 case USB_ID(0x17cc, 0x1020): /* Traktor Audio 10 */ in snd_usb_apply_boot_quirk()
1360 case USB_ID(0x0763, 0x2012): /* M-Audio Fast Track Pro USB */ in snd_usb_apply_boot_quirk()
1362 case USB_ID(0x047f, 0xc010): /* Plantronics Gamecom 780 */ in snd_usb_apply_boot_quirk()
1364 case USB_ID(0x2466, 0x8010): /* Fractal Audio Axe-Fx 3 */ in snd_usb_apply_boot_quirk()
1366 case USB_ID(0x07fd, 0x0004): /* MOTU MicroBook II */ in snd_usb_apply_boot_quirk()
1378 return 0; in snd_usb_apply_boot_quirk()
1387 case USB_ID(0x07fd, 0x0008): /* MOTU M Series */ in snd_usb_apply_boot_quirk_once()
1391 return 0; in snd_usb_apply_boot_quirk_once()
1401 case USB_ID(0x0763, 0x2001): /* M-Audio Quattro: captured data only */ in snd_usb_is_big_endian_format()
1406 case USB_ID(0x0763, 0x2003): /* M-Audio Audiophile USB */ in snd_usb_is_big_endian_format()
1407 if (chip->setup == 0x00 || in snd_usb_is_big_endian_format()
1412 case USB_ID(0x0763, 0x2012): /* M-Audio Fast Track Pro */ in snd_usb_is_big_endian_format()
1418 return 0; in snd_usb_is_big_endian_format()
1427 EMU_QUIRK_SR_44100HZ = 0,
1438 unsigned char emu_samplerate_id = 0; in set_format_emu_quirk()
1470 subs->pkt_offset_adj = (emu_samplerate_id >= EMU_QUIRK_SR_176400HZ) ? 4 : 0; in set_format_emu_quirk()
1484 sr[0] = subs->cur_rate & 0xff; in pioneer_djm_set_format_quirk()
1485 sr[1] = (subs->cur_rate >> 8) & 0xff; in pioneer_djm_set_format_quirk()
1486 sr[2] = (subs->cur_rate >> 16) & 0xff; in pioneer_djm_set_format_quirk()
1489 usb_set_interface(subs->dev, 0, 1); in pioneer_djm_set_format_quirk()
1491 usb_rcvctrlpipe(subs->stream->chip->dev, 0), in pioneer_djm_set_format_quirk()
1492 0x01, 0x22, 0x0100, 0x0082, &sr, 0x0003); in pioneer_djm_set_format_quirk()
1494 return 0; in pioneer_djm_set_format_quirk()
1501 case USB_ID(0x041e, 0x3f02): /* E-Mu 0202 USB */ in snd_usb_set_format_quirk()
1502 case USB_ID(0x041e, 0x3f04): /* E-Mu 0404 USB */ in snd_usb_set_format_quirk()
1503 case USB_ID(0x041e, 0x3f0a): /* E-Mu Tracker Pre */ in snd_usb_set_format_quirk()
1504 case USB_ID(0x041e, 0x3f19): /* E-Mu 0204 USB */ in snd_usb_set_format_quirk()
1507 case USB_ID(0x2b73, 0x000a): /* Pioneer DJ DJM-900NXS2 */ in snd_usb_set_format_quirk()
1508 case USB_ID(0x2b73, 0x0017): /* Pioneer DJ DJM-250MK2 */ in snd_usb_set_format_quirk()
1511 case USB_ID(0x534d, 0x0021): /* MacroSilicon MS2100/MS2106 */ in snd_usb_set_format_quirk()
1512 case USB_ID(0x534d, 0x2109): /* MacroSilicon MS2109 */ in snd_usb_set_format_quirk()
1522 case USB_ID(0x041e, 0x4080): /* Creative Live Cam VF0610 */ in snd_usb_get_sample_rate_quirk()
1523 case USB_ID(0x04d8, 0xfeea): /* Benchmark DAC1 Pre */ in snd_usb_get_sample_rate_quirk()
1524 case USB_ID(0x0556, 0x0014): /* Phoenix Audio TMX320VC */ in snd_usb_get_sample_rate_quirk()
1525 case USB_ID(0x05a3, 0x9420): /* ELP HD USB Camera */ in snd_usb_get_sample_rate_quirk()
1526 case USB_ID(0x05a7, 0x1020): /* Bose Companion 5 */ in snd_usb_get_sample_rate_quirk()
1527 case USB_ID(0x074d, 0x3553): /* Outlaw RR2150 (Micronas UAC3553B) */ in snd_usb_get_sample_rate_quirk()
1528 case USB_ID(0x1395, 0x740a): /* Sennheiser DECT */ in snd_usb_get_sample_rate_quirk()
1529 case USB_ID(0x1901, 0x0191): /* GE B850V3 CP2114 audio interface */ in snd_usb_get_sample_rate_quirk()
1530 case USB_ID(0x21b4, 0x0081): /* AudioQuest DragonFly */ in snd_usb_get_sample_rate_quirk()
1531 case USB_ID(0x2912, 0x30c8): /* Audioengine D1 */ in snd_usb_get_sample_rate_quirk()
1532 case USB_ID(0x413c, 0xa506): /* Dell AE515 sound bar */ in snd_usb_get_sample_rate_quirk()
1533 case USB_ID(0x046d, 0x084c): /* Logitech ConferenceCam Connect */ in snd_usb_get_sample_rate_quirk()
1539 case 0x045e: /* MS Lifecam */ in snd_usb_get_sample_rate_quirk()
1540 case 0x047f: /* Plantronics */ in snd_usb_get_sample_rate_quirk()
1541 case 0x1de7: /* Phoenix Audio */ in snd_usb_get_sample_rate_quirk()
1554 case USB_ID(0x154e, 0x1002): /* Denon DCD-1500RE */ in is_itf_usb_dsd_dac()
1555 case USB_ID(0x154e, 0x1003): /* Denon DA-300USB */ in is_itf_usb_dsd_dac()
1556 case USB_ID(0x154e, 0x3005): /* Marantz HD-DAC1 */ in is_itf_usb_dsd_dac()
1557 case USB_ID(0x154e, 0x3006): /* Marantz SA-14S1 */ in is_itf_usb_dsd_dac()
1558 case USB_ID(0x1852, 0x5065): /* Luxman DA-06 */ in is_itf_usb_dsd_dac()
1559 case USB_ID(0x0644, 0x8043): /* TEAC UD-501/UD-501V2/UD-503/NT-503 */ in is_itf_usb_dsd_dac()
1560 case USB_ID(0x0644, 0x8044): /* Esoteric D-05X */ in is_itf_usb_dsd_dac()
1561 case USB_ID(0x0644, 0x804a): /* TEAC UD-301 */ in is_itf_usb_dsd_dac()
1574 /* First switch to alt set 0, otherwise the mode switch cmd in snd_usb_select_mode_quirk()
1577 err = usb_set_interface(dev, fmt->iface, 0); in snd_usb_select_mode_quirk()
1578 if (err < 0) in snd_usb_select_mode_quirk()
1586 err = snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), 0, in snd_usb_select_mode_quirk()
1588 1, 1, NULL, 0); in snd_usb_select_mode_quirk()
1589 if (err < 0) in snd_usb_select_mode_quirk()
1595 err = snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), 0, in snd_usb_select_mode_quirk()
1597 0, 1, NULL, 0); in snd_usb_select_mode_quirk()
1598 if (err < 0) in snd_usb_select_mode_quirk()
1604 return 0; in snd_usb_select_mode_quirk()
1613 if (USB_ID_VENDOR(ep->chip->usb_id) == 0x23ba && in snd_usb_endpoint_start_quirk()
1624 if ((ep->chip->usb_id == USB_ID(0x0763, 0x2030) || in snd_usb_endpoint_start_quirk()
1625 ep->chip->usb_id == USB_ID(0x0763, 0x2031)) && in snd_usb_endpoint_start_quirk()
1630 if ((ep->chip->usb_id == USB_ID(0x0644, 0x8038) || /* TEAC UD-H01 */ in snd_usb_endpoint_start_quirk()
1631 ep->chip->usb_id == USB_ID(0x1852, 0x5034)) && /* T+A Dac8 */ in snd_usb_endpoint_start_quirk()
1647 case 0x23ba: /* Playback Design */ in snd_usb_set_interface_quirk()
1648 case 0x0644: /* TEAC Corp. */ in snd_usb_set_interface_quirk()
1667 if (USB_ID_VENDOR(chip->usb_id) == 0x23ba && in snd_usb_ctl_msg_quirk()
1675 if (USB_ID_VENDOR(chip->usb_id) == 0x0644 && in snd_usb_ctl_msg_quirk()
1690 if (USB_ID_VENDOR(chip->usb_id) == 0x047f && in snd_usb_ctl_msg_quirk()
1699 if ((chip->usb_id == USB_ID(0x1686, 0x00dd) || in snd_usb_ctl_msg_quirk()
1700 USB_ID_VENDOR(chip->usb_id) == 0x046d || /* Logitech */ in snd_usb_ctl_msg_quirk()
1701 chip->usb_id == USB_ID(0x0b0e, 0x0349) || in snd_usb_ctl_msg_quirk()
1702 chip->usb_id == USB_ID(0x0951, 0x16ad)) && in snd_usb_ctl_msg_quirk()
1710 if (chip->usb_id == USB_ID(0x04e8, 0xa051) && in snd_usb_ctl_msg_quirk()
1729 if (USB_ID_VENDOR(chip->usb_id) == 0x23ba && in snd_usb_interface_dsd_format_quirks()
1730 USB_ID_PRODUCT(chip->usb_id) < 0x0110) { in snd_usb_interface_dsd_format_quirks()
1746 case USB_ID(0x1511, 0x0037): /* AURALiC VEGA */ in snd_usb_interface_dsd_format_quirks()
1747 case USB_ID(0x21ed, 0xd75a): /* Accuphase DAC-60 option card */ in snd_usb_interface_dsd_format_quirks()
1748 case USB_ID(0x2522, 0x0012): /* LH Labs VI DAC Infinity */ in snd_usb_interface_dsd_format_quirks()
1749 case USB_ID(0x2772, 0x0230): /* Pro-Ject Pre Box S2 Digital */ in snd_usb_interface_dsd_format_quirks()
1754 case USB_ID(0x0d8c, 0x0316): /* Hegel HD12 DSD */ in snd_usb_interface_dsd_format_quirks()
1755 case USB_ID(0x10cb, 0x0103): /* The Bit Opus #3; with fp->dsd_raw */ in snd_usb_interface_dsd_format_quirks()
1756 case USB_ID(0x16d0, 0x06b2): /* NuPrime DAC-10 */ in snd_usb_interface_dsd_format_quirks()
1757 case USB_ID(0x16d0, 0x09dd): /* Encore mDSD */ in snd_usb_interface_dsd_format_quirks()
1758 case USB_ID(0x16d0, 0x0733): /* Furutech ADL Stratos */ in snd_usb_interface_dsd_format_quirks()
1759 case USB_ID(0x16d0, 0x09db): /* NuPrime Audio DAC-9 */ in snd_usb_interface_dsd_format_quirks()
1760 case USB_ID(0x1db5, 0x0003): /* Bryston BDA3 */ in snd_usb_interface_dsd_format_quirks()
1761 case USB_ID(0x22e1, 0xca01): /* HDTA Serenade DSD */ in snd_usb_interface_dsd_format_quirks()
1762 case USB_ID(0x249c, 0x9326): /* M2Tech Young MkIII */ in snd_usb_interface_dsd_format_quirks()
1763 case USB_ID(0x2616, 0x0106): /* PS Audio NuWave DAC */ in snd_usb_interface_dsd_format_quirks()
1764 case USB_ID(0x2622, 0x0041): /* Audiolab M-DAC+ */ in snd_usb_interface_dsd_format_quirks()
1765 case USB_ID(0x27f7, 0x3002): /* W4S DAC-2v2SE */ in snd_usb_interface_dsd_format_quirks()
1766 case USB_ID(0x29a2, 0x0086): /* Mutec MC3+ USB */ in snd_usb_interface_dsd_format_quirks()
1767 case USB_ID(0x6b42, 0x0042): /* MSB Technology */ in snd_usb_interface_dsd_format_quirks()
1773 case USB_ID(0x16d0, 0x071a): /* Amanero - Combo384 */ in snd_usb_interface_dsd_format_quirks()
1774 …case USB_ID(0x2ab6, 0x0004): /* T+A DAC8DSD-V2.0, MP1000E-V2.0, MP2000R-V2.0, MP2500R-V2.0, MP310… in snd_usb_interface_dsd_format_quirks()
1775 case USB_ID(0x2ab6, 0x0005): /* T+A USB HD Audio 1 */ in snd_usb_interface_dsd_format_quirks()
1776 case USB_ID(0x2ab6, 0x0006): /* T+A USB HD Audio 2 */ in snd_usb_interface_dsd_format_quirks()
1779 case 0x199: in snd_usb_interface_dsd_format_quirks()
1781 case 0x19b: in snd_usb_interface_dsd_format_quirks()
1782 case 0x203: in snd_usb_interface_dsd_format_quirks()
1789 case USB_ID(0x16d0, 0x0a23): in snd_usb_interface_dsd_format_quirks()
1803 * three (0-2), in snd_usb_interface_dsd_format_quirks()
1805 * four (0-3). in snd_usb_interface_dsd_format_quirks()
1815 case 0x152a: /* Thesycon devices */ in snd_usb_interface_dsd_format_quirks()
1816 case 0x20b1: /* XMOS based devices */ in snd_usb_interface_dsd_format_quirks()
1817 case 0x22d9: /* Oppo */ in snd_usb_interface_dsd_format_quirks()
1818 case 0x23ba: /* Playback Designs */ in snd_usb_interface_dsd_format_quirks()
1819 case 0x25ce: /* Mytek devices */ in snd_usb_interface_dsd_format_quirks()
1820 case 0x278b: /* Rotel? */ in snd_usb_interface_dsd_format_quirks()
1821 case 0x292b: /* Gustard/Ess based devices */ in snd_usb_interface_dsd_format_quirks()
1822 case 0x2972: /* FiiO devices */ in snd_usb_interface_dsd_format_quirks()
1823 case 0x2ab6: /* T+A devices */ in snd_usb_interface_dsd_format_quirks()
1824 case 0x3353: /* Khadas devices */ in snd_usb_interface_dsd_format_quirks()
1825 case 0x3842: /* EVGA */ in snd_usb_interface_dsd_format_quirks()
1826 case 0xc502: /* HiBy devices */ in snd_usb_interface_dsd_format_quirks()
1835 return 0; in snd_usb_interface_dsd_format_quirks()
1843 case USB_ID(0x0a92, 0x0053): /* AudioTrak Optoplay */ in snd_usb_audioformat_attributes_quirk()
1849 case USB_ID(0x041e, 0x3020): /* Creative SB Audigy 2 NX */ in snd_usb_audioformat_attributes_quirk()
1850 case USB_ID(0x0763, 0x2003): /* M-Audio Audiophile USB */ in snd_usb_audioformat_attributes_quirk()
1854 case USB_ID(0x0763, 0x2001): /* M-Audio Quattro USB */ in snd_usb_audioformat_attributes_quirk()
1855 case USB_ID(0x0763, 0x2012): /* M-Audio Fast Track Pro USB */ in snd_usb_audioformat_attributes_quirk()
1856 case USB_ID(0x047f, 0x0ca1): /* plantronics headset */ in snd_usb_audioformat_attributes_quirk()
1857 case USB_ID(0x077d, 0x07af): /* Griffin iMic (note that there is in snd_usb_audioformat_attributes_quirk()
1869 case USB_ID(0x07fd, 0x0004): /* MOTU MicroBook IIc */ in snd_usb_audioformat_attributes_quirk()
1897 REG_QUIRK_ENTRY(0x0951, 0x16d8, 2), /* Kingston HyperX AMP */
1898 REG_QUIRK_ENTRY(0x0951, 0x16ed, 2), /* Kingston HyperX Cloud Alpha S */
1899 REG_QUIRK_ENTRY(0x0951, 0x16ea, 2), /* Kingston HyperX Cloud Flight S */
1900 REG_QUIRK_ENTRY(0x0ecb, 0x1f46, 2), /* JBL Quantum 600 */
1901 REG_QUIRK_ENTRY(0x0ecb, 0x1f47, 2), /* JBL Quantum 800 */
1902 REG_QUIRK_ENTRY(0x0ecb, 0x1f4c, 2), /* JBL Quantum 400 */
1903 REG_QUIRK_ENTRY(0x0ecb, 0x2039, 2), /* JBL Quantum 400 */
1904 REG_QUIRK_ENTRY(0x0ecb, 0x203c, 2), /* JBL Quantum 600 */
1905 REG_QUIRK_ENTRY(0x0ecb, 0x203e, 2), /* JBL Quantum 800 */
1906 { 0 } /* terminator */