From patchwork Fri Sep 5 08:49:31 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jurgen Kramer X-Patchwork-Id: 4850621 X-Patchwork-Delegate: tiwai@suse.de Return-Path: X-Original-To: patchwork-alsa-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id EA044C0338 for ; Fri, 5 Sep 2014 08:57:12 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 3802B2011D for ; Fri, 5 Sep 2014 08:57:12 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.kernel.org (Postfix) with ESMTP id EF40D2028D for ; Fri, 5 Sep 2014 08:57:10 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id E13F0265745; Fri, 5 Sep 2014 10:57:09 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,HK_RANDOM_FROM, UNPARSEABLE_RELAY autolearn=no version=3.3.1 Received: from alsa0.perex.cz (localhost [IPv6:::1]) by alsa0.perex.cz (Postfix) with ESMTP id BDF58265719; Fri, 5 Sep 2014 10:55:46 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 00C96265719; Fri, 5 Sep 2014 10:55:44 +0200 (CEST) Received: from lb3-smtp-cloud6.xs4all.net (lb3-smtp-cloud6.xs4all.net [194.109.24.58]) by alsa0.perex.cz (Postfix) with ESMTP id 88C33265794 for ; Fri, 5 Sep 2014 10:49:34 +0200 (CEST) Received: from orwell.fritz.box ([83.163.237.189]) by smtp-cloud6.xs4all.net with ESMTP id nLpY1o00B45s9uT01LpZq4; Fri, 05 Sep 2014 10:49:34 +0200 From: Jurgen Kramer To: alsa-devel@alsa-project.org Date: Fri, 5 Sep 2014 10:49:31 +0200 Message-Id: <1409906971-3365-1-git-send-email-gtmkramer@xs4all.nl> X-Mailer: git-send-email 1.9.3 Cc: Jurgen Kramer Subject: [alsa-devel] [PATCH] add native DSD support for XMOS based DACs. X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP Add quirk for XMOS based DACs for native DSD playback support using the new DSD_U32_LE sample format. Works for all DAC vendors which use XMOS as idVendor. E.g. iFi Audio with their micro iDSD and nano iDSD. Signed-off-by: Jurgen Kramer --- sound/usb/quirks.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c index 19a921e..e0efffb 100644 --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c @@ -1174,5 +1174,15 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip, } } + /* XMOS based DACs, e.g. iFi Audio micro/nano iDSD */ + if (le16_to_cpu(chip->dev->descriptor.idVendor) == 0x20b1) { + switch (fp->altsetting) { + case 2: + return SNDRV_PCM_FMTBIT_DSD_U32_LE; + default: + return 0; + } + } + return 0; }