From patchwork Mon Feb 8 14:17:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 378551 Delivered-To: patch@linaro.org Received: by 2002:a02:b18a:0:0:0:0:0 with SMTP id t10csp4722469jah; Mon, 8 Feb 2021 06:21:35 -0800 (PST) X-Google-Smtp-Source: ABdhPJxw8SxJhzKT0oRU1HSiYyCuIzE5yoSTBCyd13GwoIV+R/ntOt9HGZTEqahzhftV8Xo0Geyk X-Received: by 2002:aa7:ce96:: with SMTP id y22mr17295070edv.369.1612794095220; Mon, 08 Feb 2021 06:21:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612794095; cv=none; d=google.com; s=arc-20160816; b=IOaSfutooGPmMMzObmgoz+bINV1Gu6DvaVT3tCvw8EqEoBKQEqj7f7LRyWngOI4Vng lTnGhIeuh6mK7n/YsUBnS4dml5wsqSVslhluRD4OlvJkNjNFMETZASqm/VT5NvUcQyaM Zna74eB2J+bKee3lY1VLTjb1FbxZbuyFMPVCrN0Nw99x+cSTHTncydj6ZqA04G624QJE uQHSTGL+Ga+wHeGUkOQ6YcaI0x6T8lu9NWSwCP/6xpkj6m//uB3dtUzGZW9KlrdSnPSt /jgN/Ii3slgbMx453IsqLRXb5UgdTUuuri5d2z6Ryipc04NHI4vCJnAB8q14st3khABd jD5w== 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=Ya8iJWuhg4IhqG6QI2i041j1f43lZLHUVVMkqQ5O0KQ=; b=Pfhekt2h8c0FyrlYxPc6clxHPAlTHJtF3YetnqD1R39flUn41BTTvWJu6oTjiBzwK5 kHZgdHr0WLGed3+3hvaOomZiX3T1vVA5h5eju+5GbrsvxkUPUo4nlb/qsdOoQcoigCZp zq/OVU72ePhiXgm46XK9TLEzaSXpuVsEkFX60YWkVyW5OA1FGcg4CFRvNEzEItpI17YQ vIalOrJnDm743uNbV0ev6WZSuYGkPzgFHr2a3iPQYg4AUSXYdn4htHs4iNP9GeJACRsB LV9Rc6asZvcdGwlOb3bkdp8voGLwtr0vl78Emr9dWwYD/bYoue3T746R8eT2ZlZPnvg7 mKUw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="Q21a4A0/"; 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 fe6si7905840ejc.349.2021.02.08.06.21.35; Mon, 08 Feb 2021 06:21:35 -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="Q21a4A0/"; 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 S232819AbhBHOUM (ORCPT + 6 others); Mon, 8 Feb 2021 09:20:12 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40268 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232918AbhBHOSG (ORCPT ); Mon, 8 Feb 2021 09:18:06 -0500 Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B114BC061786 for ; Mon, 8 Feb 2021 06:17:25 -0800 (PST) Received: by mail-wr1-x434.google.com with SMTP id n6so4495160wrv.8 for ; Mon, 08 Feb 2021 06:17:25 -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=Ya8iJWuhg4IhqG6QI2i041j1f43lZLHUVVMkqQ5O0KQ=; b=Q21a4A0/XdtqSgXZ6h+kviUME6/e8+StmW7CHx99+//fC/usypKybHrD1awOqfsLuD PLqL1PUwPlKMeYKMN2CJblvOvKZvy78zGYOsEdUBvv/wjJrWPwfJY0G2Tqt/mcqPvzdi KeK77CbJ81MzM3tRe4fSS5Fx0uA0yL8f4MG2jQn9TQmf1xGt1nPz6juo84ZiY7yDk+oj 8s++8S2R6EvZiBTCyxDqcwpLh4HoUjeyoOTi/uAkHlxQjQ6uX26nk6GYwclnkDwPyXvD aLH4/Hy3XOBzKBXAioD0N5nufbFw0SJ1UKoArkmmSTkNaCZp6s+kIQqwrZZKbP0G/Vjl JD3w== 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=Ya8iJWuhg4IhqG6QI2i041j1f43lZLHUVVMkqQ5O0KQ=; b=L84DXvYlf8/gtuOM7JFo0D3WX/7sY/8z1y1DS8DJMobaNAidrKvs2zSmwGyZAwxtnQ u9WQFKRqysZl2DLB7vzYrXOOVGv3ooAckmr4beo6cLeUtwqwUQxykSw3eZclUQa0R6w2 aRsibW5xs4EftIxVRYXLWAGa1EzNe/e08h4h38TqdwOrf9WFehgV95+WAwCIvRx8F25H Fi1lUtSguh9ETIcVKTRnNJ8UsWppBQUnxeTSuVCGrZ+tsa7jqgq06+PgPc+cqy6EGOSs WBFiAj+feItR7sux952tNI07Z2tDt4+7muDb0g4DzykZuIP8Vnfq9Uk9WU+gKnglrbsx 0Hgg== X-Gm-Message-State: AOAM532B/5j6FHccqoG/ygRgJ02MJZ0VmSjQ86pirHCzynYxnShHGYJd glJJmp0XtEA4sAYZSFxKDYBfzg== X-Received: by 2002:adf:de86:: with SMTP id w6mr12633459wrl.32.1612793843544; Mon, 08 Feb 2021 06:17:23 -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 t18sm27949809wrr.56.2021.02.08.06.17.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Feb 2021 06:17:22 -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 v2 0/7] ASoC: codecs: add support for LPASS Codec TX and RX macros Date: Mon, 8 Feb 2021 14:17:12 +0000 Message-Id: <20210208141719.23305-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 Thanks for reviewing v1, here is v2 patchset addressing comments from v1. 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 Changes since v1 - make copyright header line with C++ one - correct usage of regcache! - moved ON/OFF enums to proper switch controls - Align all the control naming! - inline swrm_clock function. 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 | 3604 +++++++++++++++++ sound/soc/codecs/lpass-tx-macro.c | 1877 +++++++++ 6 files changed, 5624 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