From patchwork Thu Jan 28 14:19:22 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 372606 Delivered-To: patch@linaro.org Received: by 2002:a02:a60d:0:0:0:0:0 with SMTP id c13csp1295327jam; Thu, 28 Jan 2021 06:20:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJznKM1/aTN3R4rFlSJ+BsLg7JayQIyljw4hiEDril7tF+fVPc1pw+fvd7SoydUNPcJU9Tkf X-Received: by 2002:a17:906:3fc1:: with SMTP id k1mr11765645ejj.58.1611843649015; Thu, 28 Jan 2021 06:20:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611843649; cv=none; d=google.com; s=arc-20160816; b=qrfhJq78/eQAS/CzaF1+skEzTBTmQdxiVtJU3rxsL5S8f9e4EhHgui3X8AnwDSqsLk zZT3DiuN4Pl/mypXbLJv89X6KRRzNR7aCm9QDEQ+NXPIU1q9Acf4Ys82G6ezu5w8zqmL WPWn35F4z7qr26huublqIBwY/I2UIqOrASWzKxBQ8nK3zOxmSvDSDC/+AOVglpNgT5x7 3jxQMefNWBNwXsDmg+m0LK8LMJpLqDGTuTjkFtKxHsLcYGdriyOOf1GCGMH/htIT2nuS 9kg1F5kDo+E7T3/SVRP8s1DmEfbdgPHHuYhDAurngR0xSwtr6VX+PRe76q+JAALDNRQS C2Tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=x0QMpFOalwPklH2KvBPZK8bo2/fUlpNzY2SPfbp4llw=; b=kWap7BJlN5WkGCsfgjjBjwyBv8+F1BoVN1TR1KuVc+da4noY0UC5zO4D1Ff2LowB5X eDuHiRDpD2A7Y9AR1Q9Aau2Qpp2uZP8rtj+tmzng/Zyz2hVUbKiyOJIjdWVKHN0mNFrX xQTfL9ngMcpgaq/3LqPiClxpArtIuC8Czo80CS9IZY+tSNnxVLWocnMAc7yuzv4l7QvX Tk/b3lmBxUQ0hsAz5xjmJPAyKuYyiEWAvvJtHrw/YSbe+SdViqez0Q3BWymzXYpqM/qm XZLygLI3vhqs5Rdu0E9d2tqEeskgfxJUtNeFV9rnOYNhM3O0PeUPAwcm8bvlPVuMdeCH 5fuQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Of6VgqVY; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b7si3115389edr.115.2021.01.28.06.20.48; Thu, 28 Jan 2021 06:20:49 -0800 (PST) Received-SPF: pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Of6VgqVY; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231439AbhA1OUr (ORCPT + 6 others); Thu, 28 Jan 2021 09:20:47 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40960 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231406AbhA1OUg (ORCPT ); Thu, 28 Jan 2021 09:20:36 -0500 Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8F933C061756 for ; Thu, 28 Jan 2021 06:19:55 -0800 (PST) Received: by mail-wr1-x42c.google.com with SMTP id 7so5593737wrz.0 for ; Thu, 28 Jan 2021 06:19:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=x0QMpFOalwPklH2KvBPZK8bo2/fUlpNzY2SPfbp4llw=; b=Of6VgqVY59Jivj4WC4gyTCCQ3IptSNXlxtDlSFMJ08D9Dj64wv60fy37px1X9F3TTU Cf0oKu/J19OKCvtwyFfgzEWVycD5BuAfmFXbhoS2enZjEeL/0cfI6cS2scFbcArjOaVJ wwqhx3JIfjCK1TkQFtZum3TbDhfDSVvT/e1zgRqCYgdXnutw9MiHdmZ3WW4z3Q5SFT7A t6K3cwA7+zfop7kE8XO43rq8ZyC7EFCmwJJtfZK/QaP2XvdwC3HG1zkmTtB/9cRPOEXq jS9xPWcC7E3qiImaC+ZRGnvAgE6iBod6k3c4lD8p6NJfq8eeYP3sfR90pUJut12WjBo1 klYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=x0QMpFOalwPklH2KvBPZK8bo2/fUlpNzY2SPfbp4llw=; b=CUZ/crkYt0Ol1cE4hjHAiaejobxid1vsz7XMhrp3JEr7ldz2tGc0obRnabneYOBloL PqBxCBdz0Z6IAgUGPjotD1uRxLpcSxSxUIyS1cXy7re/uI60rCVCVsgESIdyTNbMSWVG oWYCm7ZXMWu5f1qzbHRU2J3/3UbYsiDLeMBRSQcgX/AZ0+1XRmCy62IPwoChdEvwdL3m FR2Wq7+gVhymfQ1tVQgmsbVUSPyl+C99JWqTclwjv9pJ7sbn8WpQciAoGZ4/VbNXColh nIM8NgfbyggSEGXSTv+Bt6mDeRXabloDdXPmlVPXilYjET+BUz/CFWWuhhXDJamv5g4J qM5g== X-Gm-Message-State: AOAM530C/0YgK6wE/44MsreRlcn85TBlmwMRuFsB3yEDdFt+JVn6ODAo OXbIdwIq75jtsf5RH1H+AlpVGQ== X-Received: by 2002:a5d:65ca:: with SMTP id e10mr16805260wrw.166.1611843594318; Thu, 28 Jan 2021 06:19:54 -0800 (PST) Received: from srini-hackbox.lan (cpc86377-aztw32-2-0-cust226.18-1.cable.virginm.net. [92.233.226.227]) by smtp.gmail.com with ESMTPSA id d9sm7257096wrq.74.2021.01.28.06.19.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Jan 2021 06:19:53 -0800 (PST) From: Srinivas Kandagatla To: broonie@kernel.org Cc: perex@perex.cz, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, lgirdwood@gmail.com, devicetree@vger.kernel.org, robh+dt@kernel.org, Srinivas Kandagatla Subject: [PATCH 0/7] ASoC: codecs: add support for LPASS Codec TX and RX macros Date: Thu, 28 Jan 2021 14:19:22 +0000 Message-Id: <20210128141929.26573-1-srinivas.kandagatla@linaro.org> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org This patchset adds support for two Codec Macro blocks(TX and RX) available in Qualcomm LPASS (Low Power Audio SubSystem). There are WSA, VA, TX and RX Macros on LPASS IP, each of the Macro block has specific connectivity like WSA Macros are intended to connect to WSA Smart speaker codecs via SoundWire. VA Macro is intended for DMICs, and TX/RX for Analog codecs via SoundWire like other WCD938x Codecs to provide headphone/ear/lineout/amic/dmic etc .. Most of the work is derived from downstream Qualcomm kernels. Credits to various Qualcomm authors from Patrick Lai's team who have contributed to this code. This patchset has been tested on support to SM8250 MTP Development Board. This board has 2 WSA881X smart speakers with onboard DMIC connected to internal LPASS codec via WSA and VA macros respectively and WCD938x TX and RX connected via Soundwire via TX and RX Macros reseptively. Thanks, srini Srinivas Kandagatla (7): ASoC: qcom: dt-bindings: add bindings for lpass rx macro codec ASoC: codec: lpass-rx-macro: add support for lpass rx macro ASoC: codec: lpass-rx-macro: add dapm widgets and route ASoC: codec: lpass-rx-macro: add iir widgets ASoC: qcom: dt-bindings: add bindings for lpass tx macro codec ASoC: codec: lpass-tx-macro: add support for lpass tx macro ASoC: codec: lpass-tx-macro: add dapm widgets and route .../bindings/sound/qcom,lpass-rx-macro.yaml | 62 + .../bindings/sound/qcom,lpass-tx-macro.yaml | 67 + sound/soc/codecs/Kconfig | 10 + sound/soc/codecs/Makefile | 4 + sound/soc/codecs/lpass-rx-macro.c | 3623 +++++++++++++++++ sound/soc/codecs/lpass-tx-macro.c | 1881 +++++++++ 6 files changed, 5647 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/qcom,lpass-rx-macro.yaml create mode 100644 Documentation/devicetree/bindings/sound/qcom,lpass-tx-macro.yaml create mode 100644 sound/soc/codecs/lpass-rx-macro.c create mode 100644 sound/soc/codecs/lpass-tx-macro.c -- 2.21.0