ALSA: usb-audio: Support both DSD LE/BE Amanero firmware versions
authorJussi Laako <jussi@sonarnerd.net>
Sat, 17 Dec 2016 21:51:41 +0000 (23:51 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 28 Dec 2016 15:07:11 +0000 (16:07 +0100)
Add DSD support for both little endian (DSD_U32_LE) and big endian
(DSD_U32_BE) version of the Amanero firmware.

Signed-off-by: Jussi Laako <jussi@sonarnerd.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/quirks.c

index b3fd2382fdd9ed62f102e210489eadd17f4e3b8f..f5c68ea0468eeb8690031573d66cd38c3093d6ee 100644 (file)
@@ -1359,6 +1359,21 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
                if (fp->altsetting == 3)
                        return SNDRV_PCM_FMTBIT_DSD_U32_BE;
                break;
+
+       /* Amanero Combo384 USB interface with native DSD support */
+       case USB_ID(0x16d0, 0x071a):
+               if (fp->altsetting == 2) {
+                       switch (chip->dev->descriptor.bcdDevice) {
+                       case 0x199:
+                               return SNDRV_PCM_FMTBIT_DSD_U32_LE;
+                       case 0x19b:
+                               return SNDRV_PCM_FMTBIT_DSD_U32_BE;
+                       default:
+                               break;
+                       }
+               }
+               break;
+
        default:
                break;
        }