[alsa-devel] [PATCH v2] add native DSD support for XMOS based DACs

Jurgen Kramer gtmkramer at xs4all.nl
Fri Sep 5 15:58:39 CEST 2014


On Fri, 2014-09-05 at 15:36 +0200, Takashi Iwai wrote:
> At Fri,  5 Sep 2014 14:24:57 +0200,
> Jurgen Kramer wrote:
> > 
> > Add quirks for XMOS based DACs for native DSD playback support using the new
> > DSD_U32_LE sample format.
> > 
> > This version adds native DSD support for:
> > - iFi Audio micro iDSD/nano iDSD (they use the same prod. id)
> > - DIYINHK USB to I2S/DSD converter
> > 
> > Changes from v1:
> > - use specific product id and alt setting per XMOS based device
> > 
> > Signed-off-by: Jurgen Kramer <gtmkramer at xs4all.nl>
> > ---
> >  sound/usb/quirks.c | 15 +++++++++++++++
> >  1 file changed, 15 insertions(+)
> > 
> > diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
> > index 19a921e..5ae0536 100644
> > --- a/sound/usb/quirks.c
> > +++ b/sound/usb/quirks.c
> > @@ -1174,5 +1174,20 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
> >  		}
> >  	}
> >  
> > +	/* XMOS based USB DACs */
> > +	if (le16_to_cpu(chip->dev->descriptor.idVendor) == 0x20b1) {
> > +		switch (le16_to_cpu(chip->dev->descriptor.idProduct)) {
> > +		/* iFi Audio micro/nano iDSD */
> > +		case 0x3008:
> > +			if (fp->altsetting == 2)
> > +				return SNDRV_PCM_FMTBIT_DSD_U32_LE;
> 
> Missing break?
It is already returning. Where would the break go?
> 
> > +		/* DIYINHK DSD DXD 384kHz USB to I2S/DSD */
> > +		case 0x2009:
> > +			if (fp->altsetting == 3)
> > +				return SNDRV_PCM_FMTBIT_DSD_U32_LE;
> 
> Ditto.
See above.
> 
> > +		default:
> > +			return 0;
> > +		}
> > +	}
> >  	return 0;
> >  }
> > -- 
Jurgen



More information about the Alsa-devel mailing list