From patchwork Tue May 18 14:37:50 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 441205 Delivered-To: patch@linaro.org Received: by 2002:a02:7a1b:0:0:0:0:0 with SMTP id a27csp293785jac; Tue, 18 May 2021 07:38:11 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxYMhom1ah/sUt/RckGEDPx8Wq+8GMICT6F/gOYNl9YCR3RnNOY7WkydbjcnjPjF+0W6yPV X-Received: by 2002:aa7:db93:: with SMTP id u19mr7400472edt.227.1621348691046; Tue, 18 May 2021 07:38:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621348691; cv=none; d=google.com; s=arc-20160816; b=YXZHC4R/p0Fc5k0CHAb4r7QeMjRETbQYrC3GRjGxQk7cbmrIllO0Z7EnVp2SRV/HyC X4bw3lcltbkXKuRbodZzxdoj7z3dfJwLRqK8rfMYTh+OFEaRAt+8cYZ/esiItxweKGm9 MEJZw+N/7P3ErI2zw+RC9FGJctVCr8s8FBPhIQ9m5sO6twi0rHPLYgfgA717slHNo+0L EDeK7a7VkpAKGbBIOOLpiKPbDToleeU8AZ5twReD9Qre/PCx+280GfJBBbA2GwVIlID2 NRVz12lZE5j0FZK8eWk7cVOr2Bks4QVv/+PNmH/s5a276WHs5FQpMqxoOyBTeuKWgXRC /jWw== 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=mE2MENBP8OHhxc2QEqxv5MmkAUk1hcdbV87e9Jg3ziM=; b=weOEVjytEikKiwtTXeOLPVb6m0RQ/TsurOl6S8azRnVB2P+cv0jb3hPByR7sOoUeO6 KS2MOyTA7W642lD2UN7ogwFCPB4Bbj0M2sHPmZ7z+nQzKQWvE72wXz9cHRvzejslPHRn W/YsjSS155l7mFDFO553DH1Duv50/lC1pMj+i03/az9iG/e/vsBrB1igd1CLaoVSd2G6 m3lWUKQudwI++nybhyLcilfiJ1suSy7DD2j9HUzu2kQIGhxrvRsv7y9cY8K+450D4+Rh vH+uriSUh1yHBRSmzRO3+UD3hBi9ZoGjMDMNiMACYHswmxJGJ/oxmzs3g8byq3jDdWXv OuqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=U9PbCXaP; 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 q16si16554951edd.547.2021.05.18.07.38.10; Tue, 18 May 2021 07:38:11 -0700 (PDT) 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=U9PbCXaP; 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 S233620AbhEROj1 (ORCPT + 7 others); Tue, 18 May 2021 10:39:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57178 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233603AbhEROjZ (ORCPT ); Tue, 18 May 2021 10:39:25 -0400 Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com [IPv6:2a00:1450:4864:20::334]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7FA0FC061573 for ; Tue, 18 May 2021 07:38:05 -0700 (PDT) Received: by mail-wm1-x334.google.com with SMTP id n17-20020a7bc5d10000b0290169edfadac9so1677367wmk.1 for ; Tue, 18 May 2021 07:38:05 -0700 (PDT) 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=mE2MENBP8OHhxc2QEqxv5MmkAUk1hcdbV87e9Jg3ziM=; b=U9PbCXaPBtKPTQBynkPy5/aESRYE6eNapGtHSu4pYxv5aULFyUWY8AZ7qWFQD5qo/V zsGgfz7GoOzcnSB2BS7+2KbhyE5aYi6soJGsGlERG4kfNjJ5RX65tOY2NFJOXxcOepDW vsQdpv5l5zcL1HISRFIMmvGlJLIDYvYyzWxS8lR//PgOqdrNpTmJ2aJD75uDfYLxEv34 9V8wQU5F5jdI3bF9wp0PBJv9yYj7UUGz1/ClQphuMqXbDFNOG02quhAvF7DwbHfFd59l 0KP7V+vJf53X0ORg7zSz9nIjY2Jq4zy6wJ6sJ6Nh4Bj/pQ1E/qfACEnHVQ8af7XzloFW k2QQ== 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=mE2MENBP8OHhxc2QEqxv5MmkAUk1hcdbV87e9Jg3ziM=; b=HWLnaMbEZkFq5uKHQa5vCjWLl99cxafxgSL0RanoaderZliwdGHLpHuKiax2JVoaWg d/n1SmWHxL9gA6WEqE0h1kY8l4fWjwTxTj3Tmkb91aHJ00yNcSkGSq9aUNYj7Rf+RTmo /jMGPvD7I9rvT9Ltz9uFC5fYn3bhdu5LkudxQfhHMwntHf7vPV0JUyEoYnC/On255lVu jpgscrBGXxdClUkejYfWWwqB4b3ZvEBZGWdSKgWc5pnCPMz3rNKM+BMPIMGqUVHLL48s PMY5FlPUMCfoGF7ro+nOQe5hJc0asw5B6G2vXUmuaJfakHi7cVa6+5Ntuy5aKcMnuc/G KqTg== X-Gm-Message-State: AOAM533YIYg7hNGUvYe3S4dKDrGpW5+XmeYUV0pL68TFh68G9FQzS1Xb D7rbAI2eZQyai7C9wgiUA3pXQZDYTfCetQ== X-Received: by 2002:a1c:b384:: with SMTP id c126mr5889386wmf.110.1621348684125; Tue, 18 May 2021 07:38:04 -0700 (PDT) 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 m6sm21329087wrp.29.2021.05.18.07.38.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 May 2021 07:38:03 -0700 (PDT) From: Srinivas Kandagatla To: broonie@kernel.org Cc: robh@kernel.org, devicetree@vger.kernel.org, perex@perex.cz, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, lgirdwood@gmail.com, Srinivas Kandagatla Subject: [PATCH v6 0/9] ASoC: codecs: add wcd938x support Date: Tue, 18 May 2021 15:37:50 +0100 Message-Id: <20210518143759.16837-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 Qualcomm WCD938X codec. Qualcomm WCD9380/WCD9385 Codec is a standalone Hi-Fi audio codec IC connected over SoundWire. This device has two SoundWire devices, RX and TX respectively supporting 4 x ADCs, ClassH, Ear, Aux PA, 2xHPH, 7 x TX diff inputs, 8 DMICs and MBHC. Eventhough this device has two SoundWire devices, only tx device has access to main codec Control/Status Registers! For codec driver to be functional it would need both tx and rx Soundwire devices to be up and this is taken care by using device component framework and device-links are used to ensure proper pm dependencies. Ex tx does not enter suspend before rx or codec is suspended. This patchset along with other SoundWire patches on the list have been tested on SM8250 MTP device. Thanks, srini Changes since v5: - removed ref in qcom,mbhc-buttons-vthreshold-microvolt bindings to fix dt_bindings_check warning Srinivas Kandagatla (9): ASoC: dt-bindings: wcd938x: add bindings for wcd938x ASoC: codecs: wcd-clsh: add new version support ASoC: codecs: wcd938x: add basic driver ASoC: dt-bindings: wcd938x-sdw: add bindings for wcd938x-sdw ASoC: codecs: wcd938x-sdw: add SoundWire driver ASoC: codecs: wcd938x: add basic controls ASoC: codecs: wcd938x: add playback dapm widgets ASoC: codecs: wcd938x: add capture dapm widgets ASoC: codecs: wcd938x: add audio routing .../bindings/sound/qcom,wcd938x-sdw.yaml | 70 + .../bindings/sound/qcom,wcd938x.yaml | 148 + sound/soc/codecs/Kconfig | 13 + sound/soc/codecs/Makefile | 4 + sound/soc/codecs/wcd-clsh-v2.c | 348 +- sound/soc/codecs/wcd-clsh-v2.h | 16 + sound/soc/codecs/wcd938x-sdw.c | 298 ++ sound/soc/codecs/wcd938x.c | 3753 +++++++++++++++++ sound/soc/codecs/wcd938x.h | 705 ++++ 9 files changed, 5345 insertions(+), 10 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd938x-sdw.yaml create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml create mode 100644 sound/soc/codecs/wcd938x-sdw.c create mode 100644 sound/soc/codecs/wcd938x.c create mode 100644 sound/soc/codecs/wcd938x.h -- 2.21.0