|
@@ -2781,6 +2781,59 @@ YAMAHA_DEVICE(0x7010, "UB99"),
|
|
|
}
|
|
|
},
|
|
|
|
|
|
+/* Microsoft XboxLive Headset/Xbox Communicator */
|
|
|
+{
|
|
|
+ USB_DEVICE(0x045e, 0x0283),
|
|
|
+ .bInterfaceClass = USB_CLASS_PER_INTERFACE,
|
|
|
+ .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) {
|
|
|
+ .vendor_name = "Microsoft",
|
|
|
+ .product_name = "XboxLive Headset/Xbox Communicator",
|
|
|
+ .ifnum = QUIRK_ANY_INTERFACE,
|
|
|
+ .type = QUIRK_COMPOSITE,
|
|
|
+ .data = &(const struct snd_usb_audio_quirk[]) {
|
|
|
+ {
|
|
|
+ /* playback */
|
|
|
+ .ifnum = 0,
|
|
|
+ .type = QUIRK_AUDIO_FIXED_ENDPOINT,
|
|
|
+ .data = &(const struct audioformat) {
|
|
|
+ .formats = SNDRV_PCM_FMTBIT_S16_LE,
|
|
|
+ .channels = 1,
|
|
|
+ .iface = 0,
|
|
|
+ .altsetting = 0,
|
|
|
+ .altset_idx = 0,
|
|
|
+ .attributes = 0,
|
|
|
+ .endpoint = 0x04,
|
|
|
+ .ep_attr = 0x05,
|
|
|
+ .rates = SNDRV_PCM_RATE_CONTINUOUS,
|
|
|
+ .rate_min = 22050,
|
|
|
+ .rate_max = 22050
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ /* capture */
|
|
|
+ .ifnum = 1,
|
|
|
+ .type = QUIRK_AUDIO_FIXED_ENDPOINT,
|
|
|
+ .data = &(const struct audioformat) {
|
|
|
+ .formats = SNDRV_PCM_FMTBIT_S16_LE,
|
|
|
+ .channels = 1,
|
|
|
+ .iface = 1,
|
|
|
+ .altsetting = 0,
|
|
|
+ .altset_idx = 0,
|
|
|
+ .attributes = 0,
|
|
|
+ .endpoint = 0x85,
|
|
|
+ .ep_attr = 0x05,
|
|
|
+ .rates = SNDRV_PCM_RATE_CONTINUOUS,
|
|
|
+ .rate_min = 16000,
|
|
|
+ .rate_max = 16000
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .ifnum = -1
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+},
|
|
|
+
|
|
|
{
|
|
|
/*
|
|
|
* Some USB MIDI devices don't have an audio control interface,
|