From patchwork Fri Jul 27 12:17:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 143033 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp750215ljj; Fri, 27 Jul 2018 05:20:26 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcmZHcaAYjlk4NKDGOzcl1ZMFE3NzYDlIxSoMO49yfMpPmLOGl+2uTYe8w9IWCT1uMKCMYQ X-Received: by 2002:a17:902:a58b:: with SMTP id az11-v6mr5741118plb.36.1532694026064; Fri, 27 Jul 2018 05:20:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532694026; cv=none; d=google.com; s=arc-20160816; b=sgLQ9BbIjCLJt9vzDE13Ul2esuwtA0x+TwriMaCl73OH6byuoZLmqAlwHiqEi+L5pl qlNz9BwavD5T5kNxhVw7HsF/5eN8WwymX6v3vIONTx1qV9OczlgD2cxvw6sOcQEuw6TB L8YuOxp5nmQ9aklfV2eQQbTjNC37imwOPvoGtc3lUejNI1ezI7mSKY1ApUguHu2jTp7q RqNsOlu5/+j646h9miokOku+ly8lapzQYSQPvgkM3lOJ9rBNjlrpB9j/cU0h/wUoB2bp LBEgzTqSX1nXgxXb596DEpE7sgCZdkijbyY4kGHhQFf2/4zSANCqLkPMejomgJTYVk9J zcRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=lB2u322zLPHZapNJik7iuFA4m2QG0lxYWTqUMixucqI=; b=vfX56nlVtNE89Qz9MHAk8zp9Pgje8UwaanD3z6BRdHYpsXCSUmjU+KG5sfRnrI/jyS TXLA2EBgn+9l/j6dBOW+sitcIpdm9DEZiJvst4s2HqaPvd3Ep1P4c1R8MihovOzhjeaf uOPVmY3UoRz/dJVFiW9lv9N4myjgmNXlv9DUuCYwJrwgLpGO2BkPu87RHPL+65qftkrm nWQ+a6sWxrC2A1ngP8tqzZTAyu0lUZNbf685MpshmjPXQyA3507AlwdrWpvYb+tEpN/K vSXFfnfW5AopdHPXUL6//oClYITWw/7x3N8QbSQHRQhrDmnX6UvxKNtEDf5ypLV6McTz 69bw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=P7xso87f; spf=pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h69-v6si3831606pfc.206.2018.07.27.05.20.25; Fri, 27 Jul 2018 05:20:26 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=P7xso87f; spf=pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730908AbeG0NmF (ORCPT + 5 others); Fri, 27 Jul 2018 09:42:05 -0400 Received: from mail-wr1-f68.google.com ([209.85.221.68]:45320 "EHLO mail-wr1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730590AbeG0NmF (ORCPT ); Fri, 27 Jul 2018 09:42:05 -0400 Received: by mail-wr1-f68.google.com with SMTP id t13-v6so4854235wrv.12 for ; Fri, 27 Jul 2018 05:20:24 -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; bh=Fypcdp/yNsmis0z3qqUE42HkV0MsDOrXv8XSxx3KYq4=; b=P7xso87fmY6y13gdROnzSC1OYLQv7DywcVGy+6zpbdVcRQ82G8zlatdy/+TeL6vrbR /kiI0TJrpCaCKzwPCAASl+++RC81X/3PWPeuP5houEC0v8tI7YI2URtgwcTD1PpSyIR/ TabQlQjbZbTIuSsoWmpsC62sTPhUbbQq7o+Do= 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; bh=Fypcdp/yNsmis0z3qqUE42HkV0MsDOrXv8XSxx3KYq4=; b=JV/djkiixBNPImJxZzCi+SXeGrHyHkNVu48pXvyl2mY+ZEtiw52+Gu8TZEezpuIrud j+GhAMVxKF0gtGwlXbA1sO5exmKYV7v9EZGdYFQSwjHhknUQ4drLrmZzw2iEn6eeZ4s5 /Cjo4iGhxUuI+pQ017wNpd95l1mv1IPCZokv5pkE7XUc7es8WZo2oj+WxOGVLKmKwTg3 sS03p9mFYfEKoFXUz9cQ9C2EZQFRFj2c6Or+1pK0ZZst8y60+abkjQmLscvD/WdvElDX h0zmMqoh+GvjD0R8u769ptUWaFdMZc59JDm7qKDhxn2bQSPnXzo2IQN27ohigOZEoiNE /lwQ== X-Gm-Message-State: AOUpUlG2l4q6M1XqFa5el9yqWOMDVSAyZzZaq8RidRWFfeBNAWmEWV0M 0qXPizMUYt6x8Lomu+8qaKaJFA== X-Received: by 2002:adf:9246:: with SMTP id 64-v6mr4754181wrj.109.1532694023321; Fri, 27 Jul 2018 05:20:23 -0700 (PDT) Received: from localhost.localdomain (cpc90716-aztw32-2-0-cust92.18-1.cable.virginm.net. [86.26.100.93]) by smtp.gmail.com with ESMTPSA id b126-v6sm6178522wmf.41.2018.07.27.05.20.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 27 Jul 2018 05:20:22 -0700 (PDT) From: Srinivas Kandagatla To: lee.jones@linaro.org, robh+dt@kernel.org, broonie@kernel.org Cc: mark.rutland@arm.com, lgirdwood@gmail.com, tiwai@suse.com, bgoswami@codeaurora.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, vkoul@kernel.org, alsa-devel@alsa-project.org, srinivas.kandagatla@linaro.org Subject: [PATCH v2 00/10] ASoC: Add support to WCD9335 Audio Codec Date: Fri, 27 Jul 2018 13:17:56 +0100 Message-Id: <20180727121806.18209-1-srinivas.kandagatla@linaro.org> X-Mailer: git-send-email 2.16.2 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Thankyou for reviewing v1 patchset, here is v2 addressing comments from v1. Qualcomm WCD9335 Codec is a standalone Hi-Fi audio codec IC. It is integrated in multiple Qualcomm SoCs like: MSM8996, MSM8976, and MSM8956 chipsets. WCD9335 had multiple functional blocks, like: Soundwire controller, interrupt mux, pin controller, Audio codec, MBHC, MAD(Mic activity Detection), Ultrasonic proximity and pen detection, Battery-voltage monitoring and Codec processing engine. Currently this patchset has been only tested with SLIMbus interface due to hardware avaiablity, but it can be easily made to work with both SLIMbus and I2C/I2S. This patchset adds very basic playback and capture support witout much fancy features. New features will be added once the basic support is in. This patchset is tested on top of linux-next on DB820c for both playback and capture paths. This patchset also depends on the SLIMbus Stream apis which is already merged via char-misc tree for 4.19. Some parts of the code has been inherited from Qualcomm andriod kernel, so credits to various authors. WCD9335 can be interfaced via I2S/I2C or SLIMbus. Here is my test branch incase someone want to try this out: https://git.linaro.org/people/srinivas.kandagatla/linux.git/log/?h=wcd9335 Thanks, Srini Changes since v1 (https://lkml.org/lkml/2018/7/23/889) - Fixed dt bindings as suggested by Mark B. - cleanup CLASS-H code, remove un-used states. - Various cleanup suggested by Vinod. Srinivas Kandagatla (10): ASoC: dt-bindings: add dt bindings for wcd9335 audio codec mfd: wcd9335: add support to wcd9335 core mfd: wcd9335: add wcd irq support ASoC: wcd9335: add support to wcd9335 codec ASoC: wcd9335: add CLASS-H Controller support ASoC: wcd9335: add basic controls ASoC: wcd9335: add playback dapm widgets ASoC: wcd9335: add capture dapm widgets ASoC: wcd9335: add audio routings ASoC: apq8096: add support to Analog audio via WCD9335 slim .../devicetree/bindings/sound/qcom,wcd9335.txt | 123 + drivers/mfd/Kconfig | 18 + drivers/mfd/Makefile | 4 + drivers/mfd/wcd9335-core.c | 277 ++ drivers/mfd/wcd9335-irq.c | 172 + include/dt-bindings/mfd/wcd9335.h | 43 + include/linux/mfd/wcd9335/registers.h | 580 +++ include/linux/mfd/wcd9335/wcd9335.h | 45 + sound/soc/codecs/Kconfig | 5 + sound/soc/codecs/Makefile | 2 + sound/soc/codecs/wcd-clsh.c | 605 +++ sound/soc/codecs/wcd-clsh.h | 49 + sound/soc/codecs/wcd9335.c | 4963 ++++++++++++++++++++ sound/soc/qcom/apq8096.c | 68 + 14 files changed, 6954 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd9335.txt create mode 100644 drivers/mfd/wcd9335-core.c create mode 100644 drivers/mfd/wcd9335-irq.c create mode 100644 include/dt-bindings/mfd/wcd9335.h create mode 100644 include/linux/mfd/wcd9335/registers.h create mode 100644 include/linux/mfd/wcd9335/wcd9335.h create mode 100644 sound/soc/codecs/wcd-clsh.c create mode 100644 sound/soc/codecs/wcd-clsh.h create mode 100644 sound/soc/codecs/wcd9335.c -- 2.16.2 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html