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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C0E1C61DA4 for ; Wed, 22 Feb 2023 09:36:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232208AbjBVJgx (ORCPT ); Wed, 22 Feb 2023 04:36:53 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55306 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231474AbjBVJgT (ORCPT ); Wed, 22 Feb 2023 04:36:19 -0500 Received: from madras.collabora.co.uk (madras.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e5ab]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 859A32C647; Wed, 22 Feb 2023 01:34:06 -0800 (PST) Received: from cryzen.lan (cpc87451-finc19-2-0-cust61.4-2.cable.virginm.net [82.11.51.62]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: tanureal) by madras.collabora.co.uk (Postfix) with ESMTPSA id 8944C66021B8; Wed, 22 Feb 2023 09:32:51 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1677058371; bh=Ku18ycB9XTTA4rTLVx3riq+NXKwahcrPj/ekIBMCZI4=; h=From:To:Cc:Subject:Date:From; b=PVzlRLwRnJzkGqqLf2KD0nsVgOfRNGV+hCyuSu/7N85X4ZY1BFZzmlgyQPrpOp84R LiILtcq2/+r1SRgWXqNLedEToNSRzRqZWd4wupunqcN1N1ShWBjgHTEYwvtIp3BmB/ p973GhLt2j1ClkSMNS+ywuBmf8rUc9g33Sxo+3MJSgWE/dpojbAkQIxZo5WDjIOs0h rJlAND0Ff77egRKxW3zpYb4Zvtcpbfbb1l0B0XMyAe3xNnfSnu7FsYwrQF8qo9mHIu v3ppBIEgz9JbZZFMC/Ln0rKVafF8F6y1ix/SsJHY+hCisuE/iC0GqEnr23MVsbeH6p HwPud9o1wxzmA== From: Lucas Tanure To: David Rhodes , Charles Keepax , Liam Girdwood , Krzysztof Kozlowski , Mark Brown , Rob Herring , Jaroslav Kysela , Takashi Iwai Cc: alsa-devel@alsa-project.org, devicetree@vger.kernel.org, patches@opensource.cirrus.com, linux-kernel@vger.kernel.org, kernel@collabora.com, Lucas Tanure Subject: [PATCH v6 0/4] Add CS35L41 shared boost feature Date: Wed, 22 Feb 2023 09:32:40 +0000 Message-Id: <20230222093244.938156-1-lucas.tanure@collabora.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Valve's Steam Deck uses CS35L41 in shared boost mode, where both speakers share the boost circuit. Add this support in the shared lib, but for now, shared boost is not supported in HDA systems as would require BIOS changes. Based on David Rhodes shared boost patches. Also, fix boost config overwriting in IRQ found in the review and do a small refactor of the code. Changes from V5: - Improved documentation from Cirrrus - All amps use MDSCYN for boost source - Active amp has TX and RX enabled Changes from V4: - Fix Document subject Changes from V3: - Fix wrong code sent - Fix ISO C90 mixed declarations and code Changes from V2: - Drop External boost without VSPK Documentation - Move Shared boost to use values 2 and 3 - Revert back to reg_sequence but reading the value first and only update the necessary bits - Fix bug found by Intel kernel Test Robot Changes from V1: - Fix Documentation patch subject - New patch for External boost without VSPK Documentation - New patch to fix boost IRQ overwriting issue - New patch to refactor IRQ release error code - reinit_completion on pcm_startup - fix DRE switch overwriting - return IRQ_HANDLED in PLL_LOCK case Lucas Tanure (4): ASoC: cs35l41: Only disable internal boost ASoC: cs35l41: Refactor error release code ALSA: cs35l41: Add shared boost feature ASoC: dt-bindings: cirrus,cs35l41: Document CS35l41 shared boost .../bindings/sound/cirrus,cs35l41.yaml | 10 +- include/sound/cs35l41.h | 13 +- sound/pci/hda/cs35l41_hda.c | 6 +- sound/soc/codecs/cs35l41-lib.c | 73 +++++++++- sound/soc/codecs/cs35l41.c | 125 +++++++++--------- sound/soc/codecs/cs35l41.h | 1 + 6 files changed, 157 insertions(+), 71 deletions(-) -- 2.39.2