summaryrefslogtreecommitdiffstats
path: root/sound/usb/format.c
diff options
context:
space:
mode:
authorJussi Laako <jussi@sonarnerd.net>2018-06-13 01:43:01 +0300
committerTakashi Iwai <tiwai@suse.de>2018-06-13 07:45:38 +0200
commit3a572d94bcff98a14c94fe686881a169a26f3fca (patch)
tree9ad5db93be9d9a27537e85fd3ae4d14e0c830637 /sound/usb/format.c
parentc7273bd6c1922adcfd3ed5783c1fa69aa075f0f8 (diff)
downloadlinux-3a572d94bcff98a14c94fe686881a169a26f3fca.tar.gz
linux-3a572d94bcff98a14c94fe686881a169a26f3fca.tar.bz2
linux-3a572d94bcff98a14c94fe686881a169a26f3fca.zip
ALSA: usb-audio: Add native DSD support for Mytek DACs
Add new mostly generic code with Mytek VID to support native DSD mode. This implementation should be easier to maintain when manufacturers release new products. Signed-off-by: Jussi Laako <jussi@sonarnerd.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/format.c')
-rw-r--r--sound/usb/format.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sound/usb/format.c b/sound/usb/format.c
index 49e7ec6d2399..0a2a27f2854d 100644
--- a/sound/usb/format.c
+++ b/sound/usb/format.c
@@ -64,8 +64,11 @@ static u64 parse_audio_format_i_type(struct snd_usb_audio *chip,
sample_width = fmt->bBitResolution;
sample_bytes = fmt->bSubslotSize;
- if (format & UAC2_FORMAT_TYPE_I_RAW_DATA)
+ if (format & UAC2_FORMAT_TYPE_I_RAW_DATA) {
pcm_formats |= SNDRV_PCM_FMTBIT_SPECIAL;
+ /* flag potentially raw DSD capable altsettings */
+ fp->dsd_raw = true;
+ }
format <<= 1;
break;