diff options
| author | Erik Veijola <erik.veijola@gmail.com> | 2018-02-23 07:06:52 -0500 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2018-02-24 05:28:05 -0500 |
| commit | 240a8af929c7c57dcde28682725b29cf8474e8e5 (patch) | |
| tree | a2daf6e5c9d703d96906654b5586aa175c6c3070 | |
| parent | 1ba8f9d308174e647b864c36209b4d7934d99888 (diff) | |
ALSA: usb-audio: Add a quirck for B&W PX headphones
The capture interface doesn't work and the playback interface only
supports 48 kHz sampling rate even though it advertises more rates.
Signed-off-by: Erik Veijola <erik.veijola@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
| -rw-r--r-- | sound/usb/quirks-table.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h index 50252046b01d..754e632a27bd 100644 --- a/sound/usb/quirks-table.h +++ b/sound/usb/quirks-table.h | |||
| @@ -3325,4 +3325,51 @@ AU0828_DEVICE(0x2040, 0x7270, "Hauppauge", "HVR-950Q"), | |||
| 3325 | } | 3325 | } |
| 3326 | }, | 3326 | }, |
| 3327 | 3327 | ||
| 3328 | { | ||
| 3329 | /* | ||
| 3330 | * Bower's & Wilkins PX headphones only support the 48 kHz sample rate | ||
| 3331 | * even though it advertises more. The capture interface doesn't work | ||
| 3332 | * even on windows. | ||
| 3333 | */ | ||
| 3334 | USB_DEVICE(0x19b5, 0x0021), | ||
| 3335 | .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { | ||
| 3336 | .ifnum = QUIRK_ANY_INTERFACE, | ||
| 3337 | .type = QUIRK_COMPOSITE, | ||
| 3338 | .data = (const struct snd_usb_audio_quirk[]) { | ||
| 3339 | { | ||
| 3340 | .ifnum = 0, | ||
| 3341 | .type = QUIRK_AUDIO_STANDARD_MIXER, | ||
| 3342 | }, | ||
| 3343 | /* Capture */ | ||
| 3344 | { | ||
| 3345 | .ifnum = 1, | ||
| 3346 | .type = QUIRK_IGNORE_INTERFACE, | ||
| 3347 | }, | ||
| 3348 | /* Playback */ | ||
| 3349 | { | ||
| 3350 | .ifnum = 2, | ||
| 3351 | .type = QUIRK_AUDIO_FIXED_ENDPOINT, | ||
| 3352 | .data = &(const struct audioformat) { | ||
| 3353 | .formats = SNDRV_PCM_FMTBIT_S16_LE, | ||
| 3354 | .channels = 2, | ||
| 3355 | .iface = 2, | ||
| 3356 | .altsetting = 1, | ||
| 3357 | .altset_idx = 1, | ||
| 3358 | .attributes = UAC_EP_CS_ATTR_FILL_MAX | | ||
| 3359 | UAC_EP_CS_ATTR_SAMPLE_RATE, | ||
| 3360 | .endpoint = 0x03, | ||
| 3361 | .ep_attr = USB_ENDPOINT_XFER_ISOC, | ||
| 3362 | .rates = SNDRV_PCM_RATE_48000, | ||
| 3363 | .rate_min = 48000, | ||
| 3364 | .rate_max = 48000, | ||
| 3365 | .nr_rates = 1, | ||
| 3366 | .rate_table = (unsigned int[]) { | ||
| 3367 | 48000 | ||
| 3368 | } | ||
| 3369 | } | ||
| 3370 | }, | ||
| 3371 | } | ||
| 3372 | } | ||
| 3373 | }, | ||
| 3374 | |||
| 3328 | #undef USB_DEVICE_VENDOR_SPEC | 3375 | #undef USB_DEVICE_VENDOR_SPEC |
