From patchwork Thu Mar 17 09:31:04 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lucas Tanure X-Patchwork-Id: 12783780 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 5DA46C433EF for ; Thu, 17 Mar 2022 09:32:35 +0000 (UTC) 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 B61081862; Thu, 17 Mar 2022 10:31:43 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz B61081862 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1647509553; bh=kmcCOkKa4zj6u0VJBKGNO0hlU5Zx6kqIem31QHKyfX0=; h=From:To:Subject:Date:Cc:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From; b=ZCUyWre+uxcjwV7q8oiY3YuVIgcmY0mHgTSItKAYl3qx3y/8fw2lNlGE5cac53WBV RNqZDMKOhW6c7+aKyLsbQ5ODydFtv3y+/EYqS8k44FdZZsoBlTmFgmXy6JtyLVw8+x ougRopV7G0GfsUv/iKaWjvKOfam/As1wPQxCOh9M= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 08EF1F8051C; Thu, 17 Mar 2022 10:31:43 +0100 (CET) Received: by alsa1.perex.cz (Postfix, from userid 50401) id AB1B5F8051D; Thu, 17 Mar 2022 10:31:40 +0100 (CET) Received: from mx0b-001ae601.pphosted.com (mx0b-001ae601.pphosted.com [67.231.152.168]) (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 D1EA8F80132 for ; Thu, 17 Mar 2022 10:31:33 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz D1EA8F80132 Authentication-Results: alsa1.perex.cz; dkim=pass (2048-bit key) header.d=cirrus.com header.i=@cirrus.com header.b="Zt0Tys2Y" Received: from pps.filterd (m0077474.ppops.net [127.0.0.1]) by mx0b-001ae601.pphosted.com (8.16.1.2/8.16.1.2) with ESMTP id 22H5Kw4t025823; Thu, 17 Mar 2022 04:31:31 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cirrus.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=PODMain02222019; bh=+1Spm++uXSWjxqTxhnFXit10wfkaW+dD/q6ScBEsMgI=; b=Zt0Tys2Yx4cotdJNlZ/r3kRO00Ni9H59EKpYQHdn/1Zb9/M4X2AuIPHlSlbgzxc40rf4 KVYDAKPy9/UNB0GXZx51gCI5udcV5X+nVJpeozh9XT0flFde+S09Nw1wutaJlxOnoV+b 9DVZF/slXHKnRdnuOef2qaLHhykpV3S2FMopI0JX/R4QhfgWc4QQUHJWhvbdPvSqmOvz w7G2IMHEBO5oApexBcGIFnEgfDeE25znbFG2DcbHbRCWeOAc0GzjdZplsrUZynmDmyE5 Yu3cGZfX77TFHDab+IDD+seaFR8pZVs09BnBZrOZZVYAN0YF8mN2GbNkSFfhK3ZC1dy1 wg== Received: from ediex01.ad.cirrus.com ([84.19.233.68]) by mx0b-001ae601.pphosted.com (PPS) with ESMTPS id 3et5yp475e-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Thu, 17 Mar 2022 04:31:31 -0500 Received: from EDIEX01.ad.cirrus.com (198.61.84.80) by EDIEX01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.18; Thu, 17 Mar 2022 09:31:29 +0000 Received: from ediswmail.ad.cirrus.com (198.61.86.93) by EDIEX01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server id 15.1.2375.18 via Frontend Transport; Thu, 17 Mar 2022 09:31:29 +0000 Received: from aryzen.ad.cirrus.com (unknown [198.61.64.95]) by ediswmail.ad.cirrus.com (Postfix) with ESMTP id 8DD957C; Thu, 17 Mar 2022 09:31:29 +0000 (UTC) From: Lucas Tanure To: Liam Girdwood , Mark Brown , Rob Herring , Jaroslav Kysela , Takashi Iwai Subject: [PATCH v4 00/16] Support external boost at CS35l41 ASoC driver Date: Thu, 17 Mar 2022 09:31:04 +0000 Message-ID: <20220317093120.168534-1-tanureal@opensource.cirrus.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: 2c5yPmNcZ4Zid1lPjl9jqO_edeLTrjGT X-Proofpoint-GUID: 2c5yPmNcZ4Zid1lPjl9jqO_edeLTrjGT X-Proofpoint-Spam-Reason: safe Cc: patches@opensource.cirrus.com, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, Lucas Tanure , devicetree@vger.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" Move the support for CS35L41 external boost to its shared library for ASoC use. This move resulted in cs35l41_hda_reg_sequence being removed, and its steps were broken down into regmap writes or functions from the library. And hardware configuration struct was unified for its use in the shared lib. While at it, some minor bugs were found and fixed it. v4 changelog: - Separated GPIO 1 and 2 function enums v3 changelog: - Remove patches already accepted - Improved logic in documentation patch - Documentation patch goes before its code - Fixed missing Signed-off-by - Fixed subject for HDA patches v2 changelog: - Instead of removing the log, playback actions will log the last regmap access. - Documentation patch with the correct subject line and fixed bug reported by Rob Herring on the provided example. Previous versions: v1: https://lkml.org/lkml/2022/3/3/759 v2: https://lkml.org/lkml/2022/3/4/743 v3: https://lkml.org/lkml/2022/3/8/975 David Rhodes (1): ASoC: dt-bindings: cs35l41: Document CS35l41 External Boost Lucas Tanure (15): sound: cs35l41: Unify hardware configuration sound: cs35l41: Check hw_config before using it sound: cs35l41: Move cs35l41_gpio_config to shared lib ALSA: hda: cs35l41: Fix I2S params comments ALSA: hda: cs35l41: Always configure the DAI ALSA: hda: cs35l41: Add Boost type flag hda: cs35l41: Put the device into safe mode for external boost hda: cs35l41: Mute the device before shutdown sound: cs35l41: Enable Internal Boost in shared lib ALSA: hda: cs35l41: Move boost config to initialization code ALSA: hda: cs35l41: Remove cs35l41_hda_reg_sequence struct ALSA: hda: cs35l41: Reorganize log for playback actions ALSA: hda: cs35l41: Handle all external boost setups the same way ALSA: hda: cs35l41: Move external boost handling to lib for ASoC use ASoC: cs35l41: Support external boost .../bindings/sound/cirrus,cs35l41.yaml | 44 ++- include/sound/cs35l41.h | 59 +++- sound/pci/hda/cs35l41_hda.c | 295 ++++++------------ sound/pci/hda/cs35l41_hda.h | 27 +- sound/soc/codecs/cs35l41-i2c.c | 4 +- sound/soc/codecs/cs35l41-lib.c | 190 ++++++++++- sound/soc/codecs/cs35l41-spi.c | 4 +- sound/soc/codecs/cs35l41.c | 166 +++++----- sound/soc/codecs/cs35l41.h | 5 +- 9 files changed, 443 insertions(+), 351 deletions(-)