diff options
author | Jussi Laako <jussi@sonarnerd.net> | 2019-08-28 00:08:46 +0300 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2019-08-28 08:03:00 +0200 |
commit | eb7505d52a2f8b0cfc3fd7146d8cb2dab5a73f0d (patch) | |
tree | 7c963963420276a9b9e094194d2e7900efa3ca46 /sound/usb | |
parent | dd23e1d566d0f74aa3b68ab3237927bb15f0e644 (diff) | |
download | linux-eb7505d52a2f8b0cfc3fd7146d8cb2dab5a73f0d.tar.bz2 |
ALSA: usb-audio: DSD auto-detection for Playback Designs
Add DSD support auto-detection for newer Playback Designs devices. Older
device generations have a different USB interface implementation.
Keep the auto-detection VID whitelist sorted.
Signed-off-by: Jussi Laako <jussi@sonarnerd.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb')
-rw-r--r-- | sound/usb/quirks.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c index 5c0fa5cf1987..08ec3dac5dfe 100644 --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c @@ -1566,7 +1566,8 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip, struct usb_interface *iface; /* Playback Designs */ - if (USB_ID_VENDOR(chip->usb_id) == 0x23ba) { + if (USB_ID_VENDOR(chip->usb_id) == 0x23ba && + USB_ID_PRODUCT(chip->usb_id) < 0x0110) { switch (fp->altsetting) { case 1: fp->dsd_dop = true; @@ -1654,8 +1655,9 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip, * from XMOS/Thesycon */ switch (USB_ID_VENDOR(chip->usb_id)) { - case 0x20b1: /* XMOS based devices */ case 0x152a: /* Thesycon devices */ + case 0x20b1: /* XMOS based devices */ + case 0x23ba: /* Playback Designs */ case 0x25ce: /* Mytek devices */ case 0x2ab6: /* T+A devices */ if (fp->dsd_raw) |