From patchwork Wed Apr 1 09:59:07 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?RnJhbnRpxaFlayBLdcSNZXJh?= X-Patchwork-Id: 193116 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=3.0 tests=DKIM_ADSP_DISCARD, DKIM_SIGNED, DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 82DC2C43331 for ; Wed, 1 Apr 2020 10:00:15 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 08A932073B for ; Wed, 1 Apr 2020 10:00:15 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=alsa-project.org header.i=@alsa-project.org header.b="n+au0Avi"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=frantovo.cz header.i=@frantovo.cz header.b="WAIX5FIa" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 08A932073B Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=frantovo.cz Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id 57C6F1658; Wed, 1 Apr 2020 11:59:23 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 57C6F1658 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1585735213; bh=0KwZv8ThkJ6gb0S1hbFVZWP5HiS8UQ3XLg2YnpIxRyQ=; h=From:To:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=n+au0AviXZA5yzUeWw9gQT1ahGSayxvBKfYAsFgXHaNY/QcjhJiejC7pHMWRDawN6 F7znFPCln6mEe4hDk1Xlx/Sk9PXBbuD/VQcqnCwBSM2m63/d0XRbONy1Mcv6JYYiYE pYkZct3GdGJrYLyEStoW2ZMLIUc4h1tuUA+jBjgM= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id D3804F80148; Wed, 1 Apr 2020 11:59:22 +0200 (CEST) Received: by alsa1.perex.cz (Postfix, from userid 50401) id A2E60F8014B; Wed, 1 Apr 2020 11:59:21 +0200 (CEST) Received: from posta.frantovo.cz (czf.frantovo.cz [91.219.244.97]) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id BCD52F80148 for ; Wed, 1 Apr 2020 11:59:17 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz BCD52F80148 Authentication-Results: alsa1.perex.cz; dkim=pass (1024-bit key) header.d=frantovo.cz header.i=@frantovo.cz header.b="WAIX5FIa" Received: from posta.frantovo.cz (localhost [127.0.0.1]) by posta.frantovo.cz (Postfix) with ESMTP id 8F6A61A05AD; Wed, 1 Apr 2020 11:56:05 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=frantovo.cz; s=default; t=1585734965; bh=0KwZv8ThkJ6gb0S1hbFVZWP5HiS8UQ3XLg2YnpIxRyQ=; h=From:To:Subject:Date:In-Reply-To:References; b=WAIX5FIapcL06o0dWLMlFkRdMzZclZn4TCMwCL4Pxq1UKtMck6efPbVk40b2uusyT 5IP+1i2AJ8e3/c6+RF81RDuoTw9aL/DuVsFaEluluneucQH2HJkorOIWcZ+TwIbPgm zvuEv/9qmJF8jSnKUTWBgRXHK43Z+hQAdin2n5gw= From: =?utf-8?b?RnJhbnRpxaFlayBLdcSNZXJh?= To: alsa-devel@alsa-project.org, Takashi Iwai , =?utf-8?q?F?= =?utf-8?b?cmFudGnFoWVrIEt1xI1lcmE=?= Subject: [PATCH] ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk Date: Wed, 1 Apr 2020 11:59:07 +0200 Message-Id: <20200401095907.3387-1-konference@frantovo.cz> X-Mailer: git-send-email 2.20.1 In-Reply-To: References: MIME-Version: 1.0 X-Virus-Scanned: clamav-milter 0.98.1 at posta X-Virus-Status: Clean X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 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: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" From: František Kučera Pioneer DJ DJM-250MK2 is a mixer that acts like a USB sound card. The MIDI controller part is standard but the PCM part is "vendor specific". Output is enabled by this quirk: 8 channels, 48 000 Hz, S24_3LE. Input is not working. Signed-off-by: František Kučera --- sound/usb/quirks-table.h | 42 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h index d187aa6d50db..dcaf9eed9a41 100644 --- a/sound/usb/quirks-table.h +++ b/sound/usb/quirks-table.h @@ -3592,5 +3592,47 @@ AU0828_DEVICE(0x2040, 0x7270, "Hauppauge", "HVR-950Q"), } } }, +{ + /* + * Pioneer DJ DJM-250MK2 + * PCM is 8 channels out @ 48 fixed (endpoints 0x01). + * The output from computer to the mixer is usable. + * + * The input (phono or line to computer) is not working. + * It should be at endpoint 0x82 and probably also 8 channels, + * but it seems that it works only with Pioneer proprietary software. + * Even on officially supported OS, the Audacity was unable to record + * and Mixxx to recognize the control vinyls. + */ + USB_DEVICE_VENDOR_SPEC(0x2b73, 0x0017), + .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { + .ifnum = QUIRK_ANY_INTERFACE, + .type = QUIRK_COMPOSITE, + .data = (const struct snd_usb_audio_quirk[]) { + { + .ifnum = 0, + .type = QUIRK_AUDIO_FIXED_ENDPOINT, + .data = &(const struct audioformat) { + .formats = SNDRV_PCM_FMTBIT_S24_3LE, + .channels = 8, // outputs + .iface = 0, + .altsetting = 1, + .altset_idx = 1, + .endpoint = 0x01, + .ep_attr = USB_ENDPOINT_XFER_ISOC| + USB_ENDPOINT_SYNC_ASYNC, + .rates = SNDRV_PCM_RATE_48000, + .rate_min = 48000, + .rate_max = 48000, + .nr_rates = 1, + .rate_table = (unsigned int[]) { 48000 } + } + }, + { + .ifnum = -1 + } + } + } +}, #undef USB_DEVICE_VENDOR_SPEC