From patchwork Tue Nov 17 08:03:45 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Sit Wei Hong X-Patchwork-Id: 325549 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=-6.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=no 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 E1A8DC2D0E4 for ; Tue, 17 Nov 2020 08:11:59 +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 C76EE22447 for ; Tue, 17 Nov 2020 08:11:57 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=alsa-project.org header.i=@alsa-project.org header.b="fzF3CuS2" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C76EE22447 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com 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 301421745; Tue, 17 Nov 2020 09:11:05 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 301421745 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1605600715; bh=2E2G3OZCXo6fjrMD2Tc6z3o1sHaxMLoeNdcDKOoq+ks=; h=From:To:Subject:Date:Cc:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From; b=fzF3CuS202bEOFxdURqAUzrILnkXQpnZ3RG5M4WVkWApL4ygp76ClSOPHzhXWIIug Y3o90j8HEyg36wKSTr9QTMUAh7AErSnqarNMTczipkmJSCwOJMDjdxYXzUHPGlxt1p 8TCIXaGAMVSArsLTmgVoDqd+wl27tP1AjziTU4vo= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id BA2FEF801F9; Tue, 17 Nov 2020 09:11:04 +0100 (CET) Received: by alsa1.perex.cz (Postfix, from userid 50401) id DED89F8020B; Tue, 17 Nov 2020 09:11:02 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 41714F800FE for ; Tue, 17 Nov 2020 09:10:41 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 41714F800FE IronPort-SDR: oKiiKJDxWIipUl1r39GMVHFrpDiidGEb8/8oIEbo1d187njvL3FKT3hyLg9sUzT+w00+7vr4iA zTnreRVNWQNQ== X-IronPort-AV: E=McAfee;i="6000,8403,9807"; a="255594640" X-IronPort-AV: E=Sophos;i="5.77,484,1596524400"; d="scan'208";a="255594640" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Nov 2020 00:10:18 -0800 IronPort-SDR: qBCVwOusURdFhtj2Dwvud+zSFyk7ydHRKYIMEaWMsXs9WrOcsY32Wy9D81iLTxa2SH+0nhOgRX ZyDNSAPdR18g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,484,1596524400"; d="scan'208";a="358799012" Received: from mike-ilbpg1.png.intel.com ([10.88.227.76]) by fmsmga004.fm.intel.com with ESMTP; 17 Nov 2020 00:10:15 -0800 From: Michael Sit Wei Hong To: alsa-devel@alsa-project.org Subject: [RFC PATCH 0/4] Enable DMA mode on Intel Keem Bay platform Date: Tue, 17 Nov 2020 16:03:45 +0800 Message-Id: <20201117080354.4309-1-michael.wei.hong.sit@intel.com> X-Mailer: git-send-email 2.17.1 Cc: cezary.rojewski@intel.com, lars@metafoo.de, andriy.shevchenko@intel.com, tiwai@suse.com, jee.heng.sia@intel.com, pierre-louis.bossart@linux.intel.com, liam.r.girdwood@linux.intel.com, vkoul@kernel.org, broonie@kernel.org 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" v1: Initial patch version, to enable DMA mode on Intel Keembay platform by exposing some dmaengine api to work around DMA limitations at the client driver level. This patchset suggests an ALSA-only quirk, having other more generic means to deal with this limitation would be fine - we just wanted to have a discussion on preferred directions. The IPs used are not Intel-specific so sooner or later someone else will have similar limitations to work-around. Michael Sit Wei Hong (4): dt-bindings: sound: intel, keembay-i2s: Add info for device to use DMA ASoC: soc-generic-dmaengine-pcm: Add custom prepare and submit function ASoC: dmaengine_pcm: expose functions to header file for custom functions ASoC: Intel: KMB: Enable DMA transfer mode .../bindings/sound/intel,keembay-i2s.yaml | 14 ++ include/sound/dmaengine_pcm.h | 21 ++ sound/core/pcm_dmaengine.c | 46 ++-- sound/soc/intel/Kconfig | 2 + sound/soc/intel/keembay/kmb_platform.c | 202 ++++++++++++++++-- sound/soc/intel/keembay/kmb_platform.h | 9 + sound/soc/soc-generic-dmaengine-pcm.c | 8 +- 7 files changed, 267 insertions(+), 35 deletions(-)