From patchwork Wed Mar 5 18:58:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003315 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 1FF2EC28B24 for ; Wed, 5 Mar 2025 20:03:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=+ifTTgVVfybFoZOevqIOOe2/3W1y7d9X2viVLdQReHQ=; b=lwUkryssb2gsVdVLPO7MjvhLnV 5uh0Ec18Lwf9CDPz1JZEbX4E4c3wveYAhP6zEJb18exTwQ82F7ssfzmS++moWZ1vE+BbmR4MXttba HYJtLZlJ5ROzfz5WWGbaSdhd7g6aXrsZJKEV9gVu3C3SCndU31emx8YDTVVqYzM4qm+9QaWmz0H4k P0uhpMjLmvbSFISo7Bq3uwWcFwETw+CXSy0ICdmgONMF4HiWBXyktV1GkhLG9pMHfVxNxxXRYHdaa z8fdFn+d/nj/tO1Xfr9B0VQgW3xEJYx++EcQAwsibDr2J1lC2IOHvJGuzUqWcTrA0b/WOGR3VrXBY EE7NH2vA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuy2-000000099xt-2iYa; Wed, 05 Mar 2025 20:03:46 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptxn-00000008zrV-23xG; Wed, 05 Mar 2025 18:59:30 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201166; bh=acUZEVmdOu80f/7L3NgXf/R3B0sCOGH3PeEgX6a2U2w=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Abo9Xoco5BZ6WU42i2n8OHs+MacWHLzr5cWpH/Vj8lV7FobM5DrotgY3UG/QBPmhL pinANvay6rnmht2LOK3N+1p+D1/XHDbTUIJX8x/UVNWB6xZ2epK7GLkhBDn/4pKE1v yxTOWcCwjsUWKvnGJkRv6q2HiUtIY2gnVEfkkP7zhP4iFBVPKYoLhflODNnghG2CbZ nRqBW5z2eQvI3owf1W/sW9C9rQwM1QA1yrdZipgiC4t9cwUcUPLbSePr15liY7s59+ bUnz/L6hIntMre5JBbD2oF5HOE1Dm5iyoq6nZdZ0SsSTCsTQLZD7DSzraHEfpFzg+E D0tXnQe8ECUrw== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 9AE5617E05E7; Wed, 5 Mar 2025 19:59:20 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:16 -0300 Subject: [PATCH v4 01/19] dt-bindings: mfd: mediatek: mt6397: Add accdet subnode MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-1-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_105927_709010_4C7F1C49 X-CRM114-Status: GOOD ( 11.96 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Describe the accessory detection (accdet) module as a possible subnode of the MT6359 PMIC. Signed-off-by: Nícolas F. R. A. Prado --- .../devicetree/bindings/mfd/mediatek,mt6397.yaml | 51 ++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml b/Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml index 6a89b479d10fad3c8b61cab5a3af1453baca4d1a..51012b8bbfaef3df7bdb619a4f8d828d6f9cc15a 100644 --- a/Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml +++ b/Documentation/devicetree/bindings/mfd/mediatek,mt6397.yaml @@ -24,6 +24,7 @@ description: | - LED - Keys - Power controller + - Accessory Detection It is interfaced to host controller using SPI interface by a proprietary hardware called PMIC wrapper or pwrap. MT6397/MT6323 PMIC is a child device of pwrap. @@ -224,6 +225,30 @@ properties: description: Pin controller + accdet: + type: object + additionalProperties: false + description: + The Accessory Detection module found on the PMIC allows detecting audio + jack insertion and removal, as well as identifying the type of events + connected to the jack. + + properties: + compatible: + const: mediatek,mt6359-accdet + + mediatek,hp-eint-high: + type: boolean + description: + By default, MT6359's HP_EINT pin is assumed to be pulled high and + connected to a normally open 3.5mm jack. Plug insertion is detected + when the pin is brought low in that case. Add this property if the + behavior should be inverted, for example if a normally closed 3.5mm + jack is used, or if the line is pulled low on open. + + required: + - compatible + required: - compatible - regulators @@ -598,3 +623,29 @@ examples: compatible = "mediatek,mt6397-rtc"; }; }; + - | + #include + #include + + pmic { + compatible = "mediatek,mt6359"; + interrupt-controller; + #interrupt-cells = <2>; + + accdet { + compatible = "mediatek,mt6359-accdet"; + mediatek,hp-eint-high; + }; + + regulators { + compatible = "mediatek,mt6359-regulator"; + + buck_vs1 { + regulator-name = "vs1"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <2200000>; + regulator-enable-ramp-delay = <0>; + regulator-always-on; + }; + }; + }; From patchwork Wed Mar 5 18:58:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003243 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 B6EBEC282DE for ; Wed, 5 Mar 2025 19:04:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=eU+aqIverE9tAv+d28dt9NBQjOVvi+UK7ah2xbq/hR0=; b=P9zLL7NrRCaQxfbkXHSKR+b8Z5 AmLAMNxYTyt8O8LWEkp1qJAeizds8r5wLhcKQW0ff80jFmJ+EcmQ0E3iiDtzkjrzMOUcXzc3uKmPB kU8TjmILS1BOPUsVTOqyCEEt6KjPK1OIX/2Ynx7YVWnjhOEsD91u42M+sTTKgfZXCkkhuixKyvD6W 6HL+by508XfVSLdT3w7Ep4t/hfpzYmKgJFQy4ZI2ra4fFVneqU3u79P+VXFw78IEZiWo69hMRZE1H JUGieYFOW/hpHMPXhdrZbTirWkNun9vlKqnVoBOIZaiDrSYYw9fOtKQ5xu0hAVR7fJuZ3p3pUCsMN +BFDm+vA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpu2X-0000000913z-0mfp; Wed, 05 Mar 2025 19:04:21 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptxt-00000008zxy-12Os; Wed, 05 Mar 2025 18:59:41 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201171; bh=xcB6EmzKAOke9OP1EloteY1ttUjle262e6h5WbQPIxo=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=ocQdIifdNRcwaKW40ydvh9gP3FJbAQnPFKbUblqnNk/qVbY/7tjLDbEyvLr44Fh+c /FYs5yNu8DUl4hka7U+58oAQj8HRbZ7T1Gmbx8DHLAIi2x2Rj+ePL5xCQWz5z0dL4T f1+ix9Z8yra4sn+tI6XWChaq83jSji+f/jLhMsVrNcvxuZrzmO5Q3NGY1YbgJsy018 qVBYvn7/FM7G2FtJB0myqrp90629tGryYwACTFKTWmHd0129gaDOtzwYCKwKPIJoZl Xpf6QqvhFQmZ/OcoVAK2bQGbO4kRoPvQFYcwPaPOi2QjeUZjywkDhg/kXQJ5pKoidm OOQmDCzjP+a4A== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 7377017E0599; Wed, 5 Mar 2025 19:59:26 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:17 -0300 Subject: [PATCH v4 02/19] mfd: mt6397-core: Add mfd_cell for mt6359-accdet MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-2-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= , Andrew Perepech X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_105933_446626_6F1B3B3A X-CRM114-Status: UNSURE ( 9.96 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Andrew Perepech Add an mfd_cell for mt6359-accdet and describe its IRQ resources to allow the mt6359-accdet driver to probe. Signed-off-by: Andrew Perepech Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- drivers/mfd/mt6397-core.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/mfd/mt6397-core.c b/drivers/mfd/mt6397-core.c index 0e5d59ae064a696ae2111e2b558b316667c14773..5f8ed898890783c0ce4e34c7eae0d8f678e7d7bc 100644 --- a/drivers/mfd/mt6397-core.c +++ b/drivers/mfd/mt6397-core.c @@ -84,6 +84,12 @@ static const struct resource mt6359_keys_resources[] = { DEFINE_RES_IRQ_NAMED(MT6359_IRQ_HOMEKEY_R, "homekey_r"), }; +static const struct resource mt6359_accdet_resources[] = { + DEFINE_RES_IRQ_NAMED(MT6359_IRQ_ACCDET, "accdet_irq"), + DEFINE_RES_IRQ_NAMED(MT6359_IRQ_ACCDET_EINT0, "accdet_eint0"), + DEFINE_RES_IRQ_NAMED(MT6359_IRQ_ACCDET_EINT1, "accdet_eint1"), +}; + static const struct resource mt6323_keys_resources[] = { DEFINE_RES_IRQ_NAMED(MT6323_IRQ_STATUS_PWRKEY, "powerkey"), DEFINE_RES_IRQ_NAMED(MT6323_IRQ_STATUS_FCHRKEY, "homekey"), @@ -239,6 +245,12 @@ static const struct mfd_cell mt6359_devs[] = { .resources = mt6359_keys_resources, .of_compatible = "mediatek,mt6359-keys" }, + { + .name = "mt6359-accdet", + .of_compatible = "mediatek,mt6359-accdet", + .num_resources = ARRAY_SIZE(mt6359_accdet_resources), + .resources = mt6359_accdet_resources, + }, }; static const struct mfd_cell mt6397_devs[] = { From patchwork Wed Mar 5 18:58:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003244 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 E7E79C19F32 for ; Wed, 5 Mar 2025 19:06:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=MC5Q3ExFvTY3jQnzcaDXHRJ2zAAMr/qKR7aKCQmifUw=; b=JTnKzcAfMpeGV2i9ylYdHg82UI PWqxoiLictdnZQ1zdhiHTUknhhkVowCeKaS1/GvFp9R9vTRIiHytt63f5xIyxA5K0e5VXX0Lc2H3H O5Ao3f0Q50c0Hnbxc85QqJaCx/mM2y5keJp5UXiGzfPcg8h9onqpc0uvbTgV8LkiXEkDkgug0aleV WYdnN9pqO4KpXnZGJUU8JlPfNGFifh3kmaIvsDufAqL7ELO/JxxBY9Cs6RlRqV6/yyiyJeiktUpYU 3OSmo0hsfLNL07WkHLYv+urruFlv7BVCmNB84ZYGx4UsDNAzjvPzaZPudJAtl+Xj7iOW2QOvLjuBY uiStVfOA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpu47-000000091SC-0e8I; Wed, 05 Mar 2025 19:05:59 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptxz-0000000903R-1rnb; Wed, 05 Mar 2025 18:59:43 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201178; bh=7unty8UXqbw+pOftMZfZMEYJgXbtayExa3QUkhZmST8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Gnu5ek0jDhwqQz4n+vs9wTNjmYg3IM26mbEuFo3m8l3nRPaKX3AeZAusjqQG7tDkJ /9a7OEOXimGE8mCBRt3fxArsWloBx2pw7JG+q/+XGgKI0z65Ef0XHaIgx6BNwcTJiw Zo2xlj0MQJyA+DiMhwD1LvFKIRB8kf8i+OrLardIGzieceOgdLlAvcN8mMuuGRwXgw TERFcB7rOjy02xiw29kjFORyyl+Y4GQjjYKvhmDSqp7omzk+U/Vo1ohDzL12BGCo9q Ow15ERJ9oSpeoXQmnt5RcjcsTRP7LfEiI47JwVnAZ7YplsvZmOnQtW0rIa2Fin2ej2 ZLhKHkV74hg4g== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 4C0E617E05E7; Wed, 5 Mar 2025 19:59:32 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:18 -0300 Subject: [PATCH v4 03/19] ASoC: mediatek: mt6359-accdet: Add compatible property MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-3-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= , Andrew Perepech X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_105939_646337_E18E51A4 X-CRM114-Status: GOOD ( 13.02 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Add a compatible property and add it to the module device table for the mt6359-accdet platform driver to allow automatic module loading and probing when the compatible is present in DT. Co-developed-by: Andrew Perepech Signed-off-by: Andrew Perepech Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index ed34cc15b80e856356c07fd53af22207124e0d19..9bbd4497e8d481ee125693be2fc576b439574b39 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -1047,9 +1047,16 @@ static int mt6359_accdet_probe(struct platform_device *pdev) return ret; } +const struct of_device_id accdet_of_match[] = { + { .compatible = "mediatek,mt6359-accdet", }, + { /* sentinel */ }, +}; +MODULE_DEVICE_TABLE(of, accdet_of_match); + static struct platform_driver mt6359_accdet_driver = { .driver = { .name = "pmic-codec-accdet", + .of_match_table = accdet_of_match, }, .probe = mt6359_accdet_probe, }; From patchwork Wed Mar 5 18:58:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003248 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 17E27C19F32 for ; Wed, 5 Mar 2025 19:07:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Wavfi03VLFzkRgSXBDNQjxdQA6kIqOjOjbG1Py1RCSQ=; b=qIJLx/VNBJ60w63JUfJHtVxSXq ONzdI1aVy+y46Pz1XfKOnZ9sGeoGs7Ybr3P1m/8kL8+HM7Ad/RhATHPlqIfFJWeIXGpyqo/itOBxk MU/DByTD9T9N2HnPbHS5/cK+Cf7TqaBZkebC4jp1wm0IO/r/eNfGcJMhUq4AAHb2cSTv2iB5A+KJk IQraJ93ZCTL0xqTsyB6Fx1mtEicUsxGWD39ShYtnW3NJ4JWCY5+hV1AzidSIwHZKeCRUrvx0z+w6f vkZRPzJ3COMCl9nhsl/bUWyDRJsNkBiBnwga34b81WtDzKKRT5mcKSIo5uSfQrOgqYf1EO4Y2ggTf cP9ve14Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpu5h-000000091hH-12f9; Wed, 05 Mar 2025 19:07:37 +0000 Received: from bali.collaboradmins.com ([2a01:4f8:201:9162::2]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tpty5-0000000909K-18SX; Wed, 05 Mar 2025 18:59:46 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201183; bh=lix1WOppoHxLTu8lRo8ZOELVqyyGO52750g+3jKAaYw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=CoIUP5VwwBV5tif8gKDEdiKkhVFH1jDrE32RoRJfxre0TjDsJszxrVSk1cZ0pRXsz N3Wo5lBzowIfdBlS1u6R4vbWrYSk91AnR2LleCyb+8iUYyNbutLTGeddtDub/sUI64 th5sNwCHjSO3JKbYOfI7PVZ7ZrIUNUIEF42ybhAH40OOpfBR+Gx1ZrnlxWmTnwIcao 8mBK8khE2pCneFE9+RM8ZITh6PFSAHOqpB/kb+ovT+AmSXG/xM8YQkgdYT3GSNP2ZU 47YVpWd2TcNKRW8J9KVYw+jomYilS+2HmJQh8VMHKn3iSMD08Q1BvVDyUJEMRU2zm9 2UzyuZnype0DA== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 80E8B17E0147; Wed, 5 Mar 2025 19:59:38 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:19 -0300 Subject: [PATCH v4 04/19] ASoC: mediatek: mt6359-accdet: Handle hp-eint-high property MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-4-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_105945_475257_7029F017 X-CRM114-Status: GOOD ( 11.82 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Now that the dt-binding was introduced, the property that governs the eint polarity is a boolean called mediatek,hp-eint-high, while the current code handles a u32 property called mediatek,eint-level-pol. Update the driver handling accordingly. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 5 +---- sound/soc/codecs/mt6359-accdet.h | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index 9bbd4497e8d481ee125693be2fc576b439574b39..ca3be59d2d0ecaadccd9ba399649ba93f20490c4 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -578,10 +578,7 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) if (!ret) memcpy(priv->data->pwm_deb, pwm_deb, sizeof(pwm_deb)); - ret = of_property_read_u32(node, "mediatek,eint-level-pol", - &priv->data->eint_pol); - if (ret) - priv->data->eint_pol = 8; + priv->data->hp_eint_high = of_property_read_bool(node, "mediatek,hp-eint-high"); ret = of_property_read_u32(node, "mediatek,eint-use-ap", &tmp); if (ret) diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index c234f2f4276a12853a6fe0b13c4198dfc551b6b4..a54a328bdf3797ce642da446c0cc6792f72ec939 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -86,7 +86,7 @@ struct dts_data { unsigned int mic_vol; unsigned int mic_mode; unsigned int plugout_deb; - unsigned int eint_pol; + bool hp_eint_high; struct pwm_deb_settings *pwm_deb; struct three_key_threshold three_key; struct four_key_threshold four_key; From patchwork Wed Mar 5 18:58:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003249 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 4F2EFC282DE for ; Wed, 5 Mar 2025 19:10:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=DeE0vhY6dXgqC2p1tU3zEikTeCmuLCeYWn65Q90YH/U=; b=fpHGOEIiuwTVauXE8mAHPk9Q1y x2c/fhDWp+7vA7Pko7GALNb76fzq5RE1hbL+ThsWd21aQO5VlLzbhdXZ1TYvMOIGqGvpDFNWBQXze W5AiOIBTc0P0u9TV7+LOcLncsi0cQMtUnHg3hhVrLXaeXKF+RazbqqabK5HUg2JiKM3Q9iNDOauED ciXAHaZEbQZsIzBiSqPCha/84b44eh2jVH78zQ2kTl9XphBrormLgOu9Pb+c9/4beF0Qfc4xmgUNI 5enpGvajoBdtu4uyytlZHiU5dkA3T/2rZk1+YIfcP1poteP9XQkltilhbAiW7KvK4qnOxaxTKDSld DbyOq/pA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpu8p-0000000926J-1sz5; Wed, 05 Mar 2025 19:10:51 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyA-000000090DY-3QOw; Wed, 05 Mar 2025 18:59:52 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201189; bh=oENbZq9wxTXMu0zGgWXBpMvdBFjW1P8NsiaK44heerA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=AdLBpMEWWs1CWBuswRd67tsyOyvWg5NHhTBhApz8Hkdp3knGYg/ATT+lvO7r2TXwK r/efCet+eFfeG0k2slA6aAjm+ZLWv+qywI65WTVwVuhB+Z73rFZf4XyMEGxTHeOuGh iLB88PWR8zCyneg9c3HjbIpI2nfQ/u+dPaVMp8RJVrOkrcKP4nnMYjzDAl0OWdE0+W iVpm6qTLvieVuHmJJwF5nOJjWb7pH/kc+1eNKkV5z2vknpUZJL2oB9lwIqUaTC5N99 yVQREWBj4gN9qi9tnLYouYTYqPUdH8ozbsWz9WRm+DSaToCO7+8I9pTLzgR7Gt2j0W hsRCsNNXi5ldg== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 2E3A217E017D; Wed, 5 Mar 2025 19:59:43 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:20 -0300 Subject: [PATCH v4 05/19] ASoC: mediatek: mt6359-accdet: Implement HP_EINT polarity configuration MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-5-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= , Andrew Perepech X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_105950_994583_C517EBC8 X-CRM114-Status: GOOD ( 10.91 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Andrew Perepech The driver currently reads the HP_EINT polarity from the Devicetree but never actually configures the hardware accordingly. Implement the polarity configuration in hardware. Signed-off-by: Andrew Perepech Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index ca3be59d2d0ecaadccd9ba399649ba93f20490c4..1d4481109f6e4f473610e0797c9d3c636bdf12cf 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -730,6 +730,17 @@ static void config_digital_init_by_mode(struct mt6359_accdet *priv) BIT(ACCDET_EINT1_INVERTER_SW_EN_SFT)); } } + + if (priv->data->hp_eint_high) { + /* EINT polarity inverse */ + regmap_update_bits(priv->regmap, ACCDET_EINT_IN_INVERSE_ADDR, + ACCDET_EINT_IN_INVERSE_MASK_SFT, + BIT(ACCDET_EINT_IN_INVERSE_SFT)); + } else { + /* EINT polarity normal */ + regmap_update_bits(priv->regmap, ACCDET_EINT_IN_INVERSE_ADDR, + ACCDET_EINT_IN_INVERSE_MASK_SFT, 0); + } } static void config_eint_init_by_mode(struct mt6359_accdet *priv) From patchwork Wed Mar 5 18:58:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003335 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 E96F2C282EC for ; Wed, 5 Mar 2025 20:18:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=6H+V4x7uHeq/HJk0dDgNt5bXZ+Akgq6rofFNm1ylbII=; b=vqC7m0xYwx/qYnC75UKONsLdyD fSXkzfioaDoJ8L6P1ZVCZq3OxHoAiecQ8QKIUdF4I6u/bpFpKCxnoz7ge9sHAbdPA1BLtFfofdU3G 4h815jkqgMG3V57UwN7YSsVTWWee5L0Xrhdulu7VGuyHO6cSinYQHMRZF0vO5yT/qsjxMqoxwxY+Q 1rKz3p7N9B8p/C/lz7VF5flHxMn3A/OXhX40A/RWp20u1UDCAsVLWco0pS7FooAJOfhSnE1Bm1joM NEyPf2xaty933uWCripatjcK/h1qXAJmANA32vGpAb9EeGRY7HiUseVk86gjkVyCQAoU1usIUZ8Rh 9Ow9jHUg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpvCZ-00000009C2F-3Ilr; Wed, 05 Mar 2025 20:18:47 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyG-000000090FT-1Rbj; Wed, 05 Mar 2025 18:59:57 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201195; bh=pxGZiXC6za5vFQ3V/0fw9IlCjpRVWVwiCZ21S4dEkDI=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=irVCEjmTrmaV9tgo9Y63smxuIgVAQhefi4nf4LXOVF41sbEkbe92davF7n+kX9oXo pAJ6hpZ94FlAs1PvwI+B6LZzUIXKcIxq5b4WaVrkZjYhIgqk17EFCwnlu+QqhpKVlB IDtTb4JXBK+Yk77tFzyRQcVP3mWC4zI/4R77wrqwbNIOzjy0gu3wELw5AKFu4K0/Xo 4OR/NsXF0q1U4EiuIGldH5kIFi05y5J8w0bWW/q/E7XNIZcL4DCOni137OvLVPsEoS 8Todde+/j6aCReyhYKzp9y2k7A7LwNaDtlUWYhBLAxB4LwFEoG4eUu7LPxrHFNHDzo U1G+w6B06eTxg== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id E19FE17E0147; Wed, 5 Mar 2025 19:59:49 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:21 -0300 Subject: [PATCH v4 06/19] ASoC: mediatek: mt6359-accdet: Drop dead code for EINT/GPIO IRQ handling MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-6-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_105956_522227_22BA4A88 X-CRM114-Status: GOOD ( 12.89 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The ACCDET supports two modes for IRQ generation: PMIC EINT or AP GPIO, which in principle could be configured through a DT property. However this DT property has no user nor is documented in a binding, and the driver only implements the PMIC EINT case, so drop the unused code intended to handle both cases. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index 1d4481109f6e4f473610e0797c9d3c636bdf12cf..ce8a5e64e0b9ca508124043ca1f93aaa3cc5f9a0 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -31,9 +31,6 @@ #define REGISTER_VAL(x) ((x) - 1) /* mt6359 accdet capability */ -#define ACCDET_PMIC_EINT_IRQ BIT(0) -#define ACCDET_AP_GPIO_EINT BIT(1) - #define ACCDET_PMIC_EINT0 BIT(2) #define ACCDET_PMIC_EINT1 BIT(3) #define ACCDET_PMIC_BI_EINT BIT(4) @@ -448,8 +445,7 @@ static void mt6359_accdet_jd_work(struct work_struct *work) mt6359_accdet_recover_jd_setting(priv); } - if (priv->caps & ACCDET_PMIC_EINT_IRQ) - recover_eint_setting(priv); + recover_eint_setting(priv); mutex_unlock(&priv->res_lock); } @@ -580,14 +576,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) priv->data->hp_eint_high = of_property_read_bool(node, "mediatek,hp-eint-high"); - ret = of_property_read_u32(node, "mediatek,eint-use-ap", &tmp); - if (ret) - tmp = 0; - if (tmp == 0) - priv->caps |= ACCDET_PMIC_EINT_IRQ; - else if (tmp == 1) - priv->caps |= ACCDET_AP_GPIO_EINT; - ret = of_property_read_u32(node, "mediatek,eint-detect-mode", &priv->data->eint_detect_mode); if (ret) { @@ -902,10 +890,8 @@ static void mt6359_accdet_init(struct mt6359_accdet *priv) 0x3 << RG_ANALOGFDEN_SFT); } - if (priv->caps & ACCDET_PMIC_EINT_IRQ) { - config_eint_init_by_mode(priv); - config_digital_init_by_mode(priv); - } + config_eint_init_by_mode(priv); + config_digital_init_by_mode(priv); } int mt6359_accdet_enable_jack_detect(struct snd_soc_component *component, From patchwork Wed Mar 5 18:58:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003257 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 09A6BC282DE for ; Wed, 5 Mar 2025 19:14:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=0r41c5vW1t6txIvh8fXSv3uc3lwlvw+Uq+X3LX6zcDg=; b=fX+nZ0pPGgIW6J3chiTv/sDZD8 TdofgDv8qNxL8KrE0Kn3sKiWbauJTzjX/XP64vcau1TzOVZGIsMJMA+QgK/JEZ4pEGfoMMmvhaLxd DR/yz4hUyZT97ShanWaUluCuxeM9/9/RY4H5XHrC2K/QePRBpJggrrXWSKH9QIfgf8Vl/ZbLPChz1 5pWY5WrHq29baAuQg4ZxILn63SOibEPbvmPGZWxVuDX6qdvUJSwoKaFCk3/n2P4AJsAV+YWAiaScy lH6WZ9fdKiAvOprRjRnONXRbfWuixc8Tg6IjFB6Wo7VZTuDbMaVPwEkt8BuNPvdnDuu0W6bfuCIcX 24l3MzTQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuBx-000000092TZ-3ziS; Wed, 05 Mar 2025 19:14:05 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyL-000000090HG-3ygy; Wed, 05 Mar 2025 19:00:03 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201200; bh=ew/lKKPHiRKrKA2kFSoKnjYv5WzKBHZsXi8V5xGuf2g=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=kq6yxcbHxf5FMrDZ2VxBAMOctt94KtnY4rsGqlZmwu23S0gyG9yVy3C7iT2k/W0aD 2tMUVtJyKqua8F3g2T7l3jggQrjCoXuVNBPISFOjGjbNexrSuxSQoBs87kZ+UYz37d F+N8V5oUaFIrwdWskV+LUK0RUGYRaOaAiovQv9Qo8UdZ9TripU1dh5zLSX91H1+3ei o8FJOGVPAPUcl3i1spc/yezhz0mnSML/WohRJe70xV5FTb5PCkoTvPV9ugaTVq2Zez swd3wamisYOfoxWPodkrGAXt9L+nxgP+cUj60yOfGDjPQC/zj5OhfwPRclAmsSsoZ1 uCfOCusap729A== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 6E41517E017D; Wed, 5 Mar 2025 19:59:55 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:22 -0300 Subject: [PATCH v4 07/19] ASoC: mediatek: mt6359-accdet: Drop dead code for EINT trigger setting MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-7-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110002_132908_DCA5D2C2 X-CRM114-Status: GOOD ( 10.13 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org None of the EINT trigger options are implemented and the DT property is not described in the binding. Remove the unused code. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index ce8a5e64e0b9ca508124043ca1f93aaa3cc5f9a0..a21c6544174517e3eebc8cf25d1ea3029ba014f6 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -35,8 +35,6 @@ #define ACCDET_PMIC_EINT1 BIT(3) #define ACCDET_PMIC_BI_EINT BIT(4) -#define ACCDET_PMIC_GPIO_TRIG_EINT BIT(5) -#define ACCDET_PMIC_INVERTER_TRIG_EINT BIT(6) #define ACCDET_PMIC_RSV_EINT BIT(7) #define ACCDET_THREE_KEY BIT(8) @@ -593,15 +591,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) else if (tmp == 2) priv->caps |= ACCDET_PMIC_BI_EINT; - ret = of_property_read_u32(node, "mediatek,eint-trig-mode", - &tmp); - if (ret) - tmp = 0; - if (tmp == 0) - priv->caps |= ACCDET_PMIC_GPIO_TRIG_EINT; - else if (tmp == 1) - priv->caps |= ACCDET_PMIC_INVERTER_TRIG_EINT; - ret = of_property_read_u32(node, "mediatek,eint-use-ext-res", &priv->data->eint_use_ext_res); if (ret) { From patchwork Wed Mar 5 18:58:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003258 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 313D4C282DE for ; Wed, 5 Mar 2025 19:15:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=DGMudrUCMS2gxSmJHi8C7oS5YKQtVFZGM0QA7wuLy6A=; b=OtIfgS3uaHaCSJ//x2sqlmwgk2 vEcmniPkWL9YC9oX1gdV8/4Mk/s/gJ6kMjqjPuBjgF4tFkm7Fh1GTngMSTJf+3czyvRDNwHPxK03t mBezMJg2HumH8xE/9AjD+D4pX5MUezRzVyTLbcbKsIMGlA098nzjGaOEhU0++F9waDmN4XGMOAiCz YhN/IyyodD0croKpDYb48zKMY+gE5OdrpLiNckkAmtsZt9aWU4fIDSxoOIZPHfYlHeAlcFOh+4pfD QkmTDUKAlfEbMD+h6E0ZzMQurfT6mLTRY0vN6JTW/9K4t9LaWEk8Y7b34vUg+/Ck3Pzj6sUQ8Y+KK im3XYNdg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuDX-000000092lQ-3kkA; Wed, 05 Mar 2025 19:15:43 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyR-000000090Jg-0vuy; Wed, 05 Mar 2025 19:00:08 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201205; bh=IdQRXefJHAutmxRMMaOnaOXyfBJYqlOoGdfVopRotEs=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Kqcx5xgOXgioSF8LMYYs15i0oSPUR8vn88I04kemDVYvx0tEdEvMCoMPvc4E0tlmA o2neAwtuSm1/D7XHkgtRaJcYyRsJfT3CPRKc/hd6aq97zkE7YTH1pfumcRkQ/PNIZk gDcDQXAtPq+wTHDlQLsJrIx6hkT8ePLADmBIy5Xhr4VgwvH8HnIaF/oZZskCslRHc4 GK4RH2N3vBHToGQe+GiNgyyf5GY2ZZSbAyQglwp6rvaL/hh9ZZ57FMqOPV6Y3i2ua+ Z2KDoRcfXp4uMafcwy/R8T82Ae4j0WG/kThUWbWH9uk6rekZbM24M94Xy4XH3ODGe3 OzEPEZ4fHa16Q== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 0D67F17E0147; Wed, 5 Mar 2025 20:00:00 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:23 -0300 Subject: [PATCH v4 08/19] ASoC: mediatek: mt6359-accdet: Drop dead code for button detection MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-8-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110007_399236_22A2119B X-CRM114-Status: GOOD ( 17.12 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The button detection functionality depends on a calibration voltage value which is currently not updated anywhere in the driver code, and hence it doesn't actually do anything. Remove this unused code. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 92 ++-------------------------------------- sound/soc/codecs/mt6359-accdet.h | 17 -------- 2 files changed, 3 insertions(+), 106 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index a21c6544174517e3eebc8cf25d1ea3029ba014f6..6b0178976d91e37c32540991693ebfd8e29c11f5 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -37,9 +37,6 @@ #define ACCDET_PMIC_RSV_EINT BIT(7) -#define ACCDET_THREE_KEY BIT(8) -#define ACCDET_FOUR_KEY BIT(9) -#define ACCDET_TRI_KEY_CDD BIT(10) #define ACCDET_RSV_KEY BIT(11) #define ACCDET_ANALOG_FASTDISCHARGE BIT(12) @@ -255,7 +252,6 @@ static void mt6359_accdet_recover_jd_setting(struct mt6359_accdet *priv) priv->data->pwm_deb->debounce3); priv->jack_type = 0; - priv->btn_type = 0; priv->accdet_status = 0x3; mt6359_accdet_jack_report(priv); } @@ -318,45 +314,10 @@ static void mt6359_accdet_jack_report(struct mt6359_accdet *priv) if (!priv->jack) return; - report = priv->jack_type | priv->btn_type; + report = priv->jack_type; snd_soc_jack_report(priv->jack, report, MT6359_ACCDET_JACK_MASK); } -static unsigned int check_button(struct mt6359_accdet *priv, unsigned int v) -{ - if (priv->caps & ACCDET_FOUR_KEY) { - if (v < priv->data->four_key.down && - v >= priv->data->four_key.up) - priv->btn_type = SND_JACK_BTN_1; - if (v < priv->data->four_key.up && - v >= priv->data->four_key.voice) - priv->btn_type = SND_JACK_BTN_2; - if (v < priv->data->four_key.voice && - v >= priv->data->four_key.mid) - priv->btn_type = SND_JACK_BTN_3; - if (v < priv->data->four_key.mid) - priv->btn_type = SND_JACK_BTN_0; - } else { - if (v < priv->data->three_key.down && - v >= priv->data->three_key.up) - priv->btn_type = SND_JACK_BTN_1; - if (v < priv->data->three_key.up && - v >= priv->data->three_key.mid) - priv->btn_type = SND_JACK_BTN_2; - if (v < priv->data->three_key.mid) - priv->btn_type = SND_JACK_BTN_0; - } - return 0; -} - -static void is_key_pressed(struct mt6359_accdet *priv, bool pressed) -{ - priv->btn_type = priv->jack_type & ~MT6359_ACCDET_BTN_MASK; - - if (pressed) - check_button(priv, priv->cali_voltage); -} - static inline void check_jack_btn_type(struct mt6359_accdet *priv) { unsigned int val = 0; @@ -368,15 +329,11 @@ static inline void check_jack_btn_type(struct mt6359_accdet *priv) switch (priv->accdet_status) { case 0: - if (priv->jack_type == SND_JACK_HEADSET) - is_key_pressed(priv, true); - else + if (priv->jack_type != SND_JACK_HEADSET) priv->jack_type = SND_JACK_HEADPHONE; break; case 1: - if (priv->jack_type == SND_JACK_HEADSET) { - is_key_pressed(priv, false); - } else { + if (priv->jack_type != SND_JACK_HEADSET) { priv->jack_type = SND_JACK_HEADSET; accdet_set_debounce(priv, eint_state011, 0x1); } @@ -603,48 +560,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) if (ret) priv->data->eint_comp_vth = 0x0; - ret = of_property_read_u32(node, "mediatek,key-mode", &tmp); - if (ret) - tmp = 0; - if (tmp == 0) { - int three_key[4]; - - priv->caps |= ACCDET_THREE_KEY; - ret = of_property_read_u32_array(node, - "mediatek,three-key-thr", - three_key, - ARRAY_SIZE(three_key)); - if (!ret) - memcpy(&priv->data->three_key, three_key + 1, - sizeof(struct three_key_threshold)); - } else if (tmp == 1) { - int four_key[5]; - - priv->caps |= ACCDET_FOUR_KEY; - ret = of_property_read_u32_array(node, - "mediatek,four-key-thr", - four_key, - ARRAY_SIZE(four_key)); - if (!ret) { - memcpy(&priv->data->four_key, four_key + 1, - sizeof(struct four_key_threshold)); - } else { - dev_warn(priv->dev, - "accdet no 4-key-thrsh dts, use efuse\n"); - } - } else if (tmp == 2) { - int three_key[4]; - - priv->caps |= ACCDET_TRI_KEY_CDD; - ret = of_property_read_u32_array(node, - "mediatek,tri-key-cdd-thr", - three_key, - ARRAY_SIZE(three_key)); - if (!ret) - memcpy(&priv->data->three_key, three_key + 1, - sizeof(struct three_key_threshold)); - } - of_node_put(node); dev_warn(priv->dev, "accdet caps=%x\n", priv->caps); @@ -1015,7 +930,6 @@ static int mt6359_accdet_probe(struct platform_device *pdev) priv->jd_sts = M_PLUG_OUT; priv->jack_type = 0; - priv->btn_type = 0; priv->accdet_status = 0x3; mt6359_accdet_init(priv); diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index a54a328bdf3797ce642da446c0cc6792f72ec939..09e1072b61a4c929bf6b764b4fab3c4b26f7cf4a 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -50,19 +50,6 @@ enum { eint_inverter_state000, }; -struct three_key_threshold { - unsigned int mid; - unsigned int up; - unsigned int down; -}; - -struct four_key_threshold { - unsigned int mid; - unsigned int voice; - unsigned int up; - unsigned int down; -}; - struct pwm_deb_settings { unsigned int pwm_width; unsigned int pwm_thresh; @@ -88,8 +75,6 @@ struct dts_data { unsigned int plugout_deb; bool hp_eint_high; struct pwm_deb_settings *pwm_deb; - struct three_key_threshold three_key; - struct four_key_threshold four_key; unsigned int moisture_detect_enable; unsigned int eint_detect_mode; unsigned int eint_use_ext_res; @@ -112,10 +97,8 @@ struct mt6359_accdet { struct mutex res_lock; /* lock protection */ bool jack_plugged; unsigned int jack_type; - unsigned int btn_type; unsigned int accdet_status; unsigned int pre_accdet_status; - unsigned int cali_voltage; unsigned int jd_sts; struct work_struct accdet_work; struct workqueue_struct *accdet_workqueue; From patchwork Wed Mar 5 18:58:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003575 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 E6851C28B22 for ; Wed, 5 Mar 2025 22:49:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=KF/PaATiK0x9qPF++Y8jAW/yXaoAkToj5SY2XZUl4HE=; b=sDKXvF5QNPzyTATPoIf3j6syAB 0eEZnd7ddQRqOEdu/8CORSPdneDSN7q7OWn2jhzlnByMyv9Jjj7x7du/kBYjeyeTDfchjwz7zoMDp Trt/3TQwS4wqGCci62rGe/8sG25BJlzjJLvaoNhCnduWHLGefq2iGK5ZWIQJylCZ7BEij36E+SWJ1 2bw3+sYDmZZc6jUDx0Z6CuUsPoaaYc2QH0/RY5LpeaGnpRkCIEbKMZQf5CnU/DG4zU7UXHfP79GMv xslRT5834n039apRyn3SNwyNatu2OH1I8LN0+TGp5K2w6PW4TyFf/c5vPE26nqmid4jXf96PzXNS0 YxkGq3Dw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpxXi-00000009WRM-3A1N; Wed, 05 Mar 2025 22:48:46 +0000 Received: from bali.collaboradmins.com ([2a01:4f8:201:9162::2]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyX-000000090L7-070b; Wed, 05 Mar 2025 19:00:14 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201211; bh=25TENqi8q+kBqzrzX/J7Q2+OaNY4swWOeoiOQighkU8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=mAhx/i5rvlXXoTH4k9hox7FMCKAQo0dnsBU5AwbFnRPsYlJkD81eXnUFpEMjaJrki 6BLyhmgw0xYYJcQUIqDsOc9EmKW7Z6PIq5NmOftisqQOoju83COFY3iVNWDelejr0B p4EN8KwYH2tVE5e6Lo/EBvtwR+JNrXAfUKEIXMMqa7/HLGLdz4WE753l8d1MnNDdAu UOslnmAm2sxcvqIUxwoN2wiqePDZ75cTScFXfmVmOE9Uq+YfPsU3jgXzYnxQRhLLWH qdsfD1caxsukbwhwc4QLgkWXWUYXRMiUeNu//+8Q4Xd//D6j07uaGwnBRQU7gT2zR3 0FqMvtBUrYsYQ== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 617F317E0343; Wed, 5 Mar 2025 20:00:06 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:24 -0300 Subject: [PATCH v4 09/19] ASoC: mediatek: mt6359-accdet: Drop dead code for plugout-debounce MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-9-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110013_246133_22F16B8B X-CRM114-Status: GOOD ( 10.28 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The mediatek,plugout-debounce property is undocumented in the binding and unhandled by the driver. Remove it. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 5 ----- sound/soc/codecs/mt6359-accdet.h | 1 - 2 files changed, 6 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index 6b0178976d91e37c32540991693ebfd8e29c11f5..d78d7516342a5c2273b1c2962c0346646aa6390f 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -513,11 +513,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) if (ret) priv->data->mic_vol = 8; - ret = of_property_read_u32(node, "mediatek,plugout-debounce", - &priv->data->plugout_deb); - if (ret) - priv->data->plugout_deb = 1; - ret = of_property_read_u32(node, "mediatek,mic-mode", &priv->data->mic_mode); if (ret) diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 09e1072b61a4c929bf6b764b4fab3c4b26f7cf4a..54a33a0f0e084f80df33386b3df9bba9525fa880 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -72,7 +72,6 @@ struct pwm_deb_settings { struct dts_data { unsigned int mic_vol; unsigned int mic_mode; - unsigned int plugout_deb; bool hp_eint_high; struct pwm_deb_settings *pwm_deb; unsigned int moisture_detect_enable; From patchwork Wed Mar 5 18:58:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003268 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 0975EC282DE for ; Wed, 5 Mar 2025 19:19:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=mwcp+k7ZQvRTd7IQ5/92ptIUxiRcw/r4u9UflcpI4Vg=; b=wUaZQ8MgTd4XUuJcQ9Aeamwlg2 cAWT6ZDO3qPO3F4YFQbVMOvgW+H7qh28K4/V1QeBreJOuLij4B1ZCp+Wtar9ybfcqdushjoXDA8Z1 mDvue/SlwdlaRz6ZaQAIs5pHMJtz4BlLdxLczi7agzYbZJL1VzqZW7xiXDSs6cFkutWgrNTZCHlgV 6iN6oRA+GgYhHsz9UbziURsXcpjSEMzmiNFpgM3ZoTiJrJVbK6SNcz37gAmDTKMtista+R2yUvdwt oZP4UjjUFioq5mI3Gh0/m9+4isdviWfeTQAZTLKPgOIfLeubcy4EBqjifgwy6PJIesOW01jd/Fsfl UyEYQaxQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuGg-000000093C2-0Wqe; Wed, 05 Mar 2025 19:18:58 +0000 Received: from bali.collaboradmins.com ([2a01:4f8:201:9162::2]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyc-000000090Mm-2YLG; Wed, 05 Mar 2025 19:00:19 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201217; bh=nJmb237CbucvJKm/CuN9D5tE8zn4QuoUQDJSwYS6fXw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=lk5hFQazmOQJIF0vamtqSxirnH5zfQBapxQpL7qiCSRyb4XT2bU6gGhfTudmQJdbx 0l0wMZzd1p88PGEvHYgZXAlmdZlcg42F9Gv83GKrsM1qcmtfYrDNBMIUtE8Y2ltSNN Yj+COCOFWLDBddFDZtVMT/sMgjlD2qzkc9/X2KD6AilQtJtp1oiPMV43RMYc+AL5Zj 1/9HZ64TwyYTcMg3QSWwHDedTSe9d0Tw4lPShRYPAt1Q9vv+0xrqdAq3VzkXp+2eBq yO4l4ecQMu1RJAW6FHc8tnB46f/Uo93oup18+weMXPrJiwdZKUp0KD1Y9XR6foc7lc d1j5WLASAsRXA== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id E63BB17E0649; Wed, 5 Mar 2025 20:00:11 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:25 -0300 Subject: [PATCH v4 10/19] ASoC: mediatek: mt6359-accdet: Drop unused moisture variables MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-10-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110018_813672_FC1DED53 X-CRM114-Status: UNSURE ( 8.26 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The dts_data struct contains several variables for moisture configuration that are simply never used. Drop them. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.h | 5 ----- 1 file changed, 5 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 54a33a0f0e084f80df33386b3df9bba9525fa880..38c36d59b9cc68bd90e16137a05a62b521b75ac1 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -74,14 +74,9 @@ struct dts_data { unsigned int mic_mode; bool hp_eint_high; struct pwm_deb_settings *pwm_deb; - unsigned int moisture_detect_enable; unsigned int eint_detect_mode; unsigned int eint_use_ext_res; unsigned int eint_comp_vth; - unsigned int moisture_detect_mode; - unsigned int moisture_comp_vth; - unsigned int moisture_comp_vref2; - unsigned int moisture_use_ext_res; }; struct mt6359_accdet { From patchwork Wed Mar 5 18:58:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003269 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 CDFFCC19F32 for ; Wed, 5 Mar 2025 19:20:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=JiTb+asUUCMpg2G5cuZKZ2+VdFpb4I2J3EOF5uTEW7c=; b=EIvW1z0eBu+vZs30itqLbqormg vVclO1CgcbYVyx8yppJXrRCjxms0q5sJopuLeHTGdei1RhHqPSYEqf0298ofEBxuznHqO3uymZTVC 0rZzgs1C7GH2PvrU//AsKRjrfgnwyz8J/NHXhAL20/I3OdX1bUmaGq97T6+d+E5/OOJYbT3zf/MCF Vn+s0/5MtRW7Lumbyo2AfZuThMxH65NNHjQXMV9aGjvZhkyTbz9nMVn+qKfgL4Ju/iuUlXc25MNs5 jp/DNg3PqNHIKae/m7nwFBp8k9yJ0sbLKBLOCWSQYWNiFIZhgwFXCBv9MqF2K3c6HbRA99zxzyt8C bKRpeLXA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuIG-000000093YT-0QRX; Wed, 05 Mar 2025 19:20:36 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyh-000000090O2-3ouY; Wed, 05 Mar 2025 19:00:25 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201222; bh=Vr2iMt1JwvPbsT2boRLW+AKpWeiECbyHNYOMDVwTEG4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=ACTFevo+bRvpLn+18qWQAf+W/aQUKIFAGYcXCqo0jPTJFUKcqZI+5/qaIPLQO6aM2 a2L4rFfit/CTPIwtsvxS0+oKAOvQZMv4GGPty2NateqfugQSlsbeCLa2uo9PipXiyg sAjElkRyUyUonpe5fTwB0B7lqBK0Lq6r8+9leSPYjaU3gR+IvVv5PndSrI5sfcoRo4 QDL/1XpNzD31/Cuh85IP3/IMNQNTXtb3eN1MERunKsyLNs3FQV3RaIhWVmwjGSzhi6 Xiex4q4meIg1TrAp/73Q+6WHT98Z+BBZYg7G/age/VKV9XyT8Q+U//QtPmG64+LznE zrQSLV4XhChug== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id A583517E017D; Wed, 5 Mar 2025 20:00:17 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:26 -0300 Subject: [PATCH v4 11/19] ASoC: mediatek: mt6359-accdet: Always use internal resistor MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-11-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110024_087587_139FD28E X-CRM114-Status: GOOD ( 14.30 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The code currently reads a property mediatek,eint-use-ext-res with values ranging between 0 and 4. Not only should this be a boolean property, but there's no need for it to even be a DT property, seeing as all current boards will use the internal resistor anyway. Since there's no current dt-binding or Devicetree user of this property, remove its handling and make the driver always configure the internal resistor. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 53 +++++++++++----------------------------- sound/soc/codecs/mt6359-accdet.h | 1 - 2 files changed, 14 insertions(+), 40 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index d78d7516342a5c2273b1c2962c0346646aa6390f..e04cfb9a607aa5d38d46329eb1387545fda37ccc 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -82,14 +82,10 @@ static unsigned int adjust_eint_analog_setting(struct mt6359_accdet *priv) RG_EINT1CONFIGACCDET_MASK_SFT, BIT(RG_EINT1CONFIGACCDET_SFT)); } - if (priv->data->eint_use_ext_res == 0x3 || - priv->data->eint_use_ext_res == 0x4) { - /*select 500k, use internal resistor */ - regmap_update_bits(priv->regmap, - RG_EINT0HIRENB_ADDR, - RG_EINT0HIRENB_MASK_SFT, - BIT(RG_EINT0HIRENB_SFT)); - } + /*select 500k, use internal resistor */ + regmap_update_bits(priv->regmap, RG_EINT0HIRENB_ADDR, + RG_EINT0HIRENB_MASK_SFT, + BIT(RG_EINT0HIRENB_SFT)); } return 0; } @@ -543,13 +539,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) else if (tmp == 2) priv->caps |= ACCDET_PMIC_BI_EINT; - ret = of_property_read_u32(node, "mediatek,eint-use-ext-res", - &priv->data->eint_use_ext_res); - if (ret) { - /* eint use internal resister */ - priv->data->eint_use_ext_res = 0x0; - } - ret = of_property_read_u32(node, "mediatek,eint-comp-vth", &priv->data->eint_comp_vth); if (ret) @@ -651,30 +640,16 @@ static void config_eint_init_by_mode(struct mt6359_accdet *priv) if (priv->data->eint_detect_mode == 0x1 || priv->data->eint_detect_mode == 0x2 || priv->data->eint_detect_mode == 0x3) { - if (priv->data->eint_use_ext_res == 0x1) { - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, - RG_EINT0CONFIGACCDET_ADDR, - RG_EINT0CONFIGACCDET_MASK_SFT, - 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, - RG_EINT1CONFIGACCDET_ADDR, - RG_EINT1CONFIGACCDET_MASK_SFT, - 0); - } - } else { - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, - RG_EINT0CONFIGACCDET_ADDR, - RG_EINT0CONFIGACCDET_MASK_SFT, - BIT(RG_EINT0CONFIGACCDET_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, - RG_EINT1CONFIGACCDET_ADDR, - RG_EINT1CONFIGACCDET_MASK_SFT, - BIT(RG_EINT1CONFIGACCDET_SFT)); - } + if (priv->caps & ACCDET_PMIC_EINT0) { + regmap_update_bits(priv->regmap, + RG_EINT0CONFIGACCDET_ADDR, + RG_EINT0CONFIGACCDET_MASK_SFT, + BIT(RG_EINT0CONFIGACCDET_SFT)); + } else if (priv->caps & ACCDET_PMIC_EINT1) { + regmap_update_bits(priv->regmap, + RG_EINT1CONFIGACCDET_ADDR, + RG_EINT1CONFIGACCDET_MASK_SFT, + BIT(RG_EINT1CONFIGACCDET_SFT)); } } diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 38c36d59b9cc68bd90e16137a05a62b521b75ac1..99de5037a2294b62cb8535fc45dbf4c6fafb5c7f 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -75,7 +75,6 @@ struct dts_data { bool hp_eint_high; struct pwm_deb_settings *pwm_deb; unsigned int eint_detect_mode; - unsigned int eint_use_ext_res; unsigned int eint_comp_vth; }; From patchwork Wed Mar 5 18:58:27 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003345 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 D635BC282DE for ; Wed, 5 Mar 2025 20:33:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=cEU4xz69QdJMpcTrXP9zPbEym/xCe6WuZGRi7t7DB8o=; b=Y3D1zUQmVTAU5C/c6PGn6FeaQh Gic0wBg0fdNYa73ZlDPWNMwjSpbZVDas/ftzFyMUO8j1/iImawpc0KD+B9PpMCs7gfsiwmdljoA2+ GzOUf+GaYEP1aTZQTWfDbpDpWTkjL0yi6aPcMJD5TdD7SmBPtGySTxw0qDa4ebl3YiZCMHzXLpvOC cclJMDaDStJplfXPr6m9M5blFerLDQLrJE8LVEdr0zlh4hlYwJoWntCYgbowwdOxdLH2WPoTdToDi Crro7TH0YTHrCNo84DUwrNG6UQYVFmHsKIohZ+Zc720dMNjR3vcj91aRIhDiMwLgz2RbCVld3Ul2W SkW1cl7w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpvR3-00000009EK2-1vHy; Wed, 05 Mar 2025 20:33:45 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyn-000000090QJ-2iXl; Wed, 05 Mar 2025 19:00:30 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201228; bh=hn1gBR+tSRv7Ed94tUAvjpBP/2EKao1MU4M0g6tP780=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=pJD6NFbYMimfnF69UsoPodzG+iZkNJaIxcDzxkk6Mzcn+dJ/6a8yaHZUua7ZPW6o4 w/XZqBRZ84hj27LKJl/M93jYsfeFliwdpgMQnkUTz4/SrfLUMx8Jp9nnShcgTzidme inxTy4HVcKYpaLFH2LaKfyfzt0YkwfzSO/N0Anyv/4CCx7PU81Hv6iO4dCmvxaU6Vu k051pAPi4SfjU3444olTNBH5wFr3Py4CE4A6gTVV5KnFaE5lrZs7WqO2pdi8eeGxJy 48Tw8pzU/DLaWv47qG/ocnz9oEwJ/pKjQhEq5Ea8Jj/P2D8tXglu4uhphshcVnGZcd EiHrWHvWq3qgw== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 3119F17E0D13; Wed, 5 Mar 2025 20:00:22 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:27 -0300 Subject: [PATCH v4 12/19] ASoC: mediatek: mt6359-accdet: Make PWM debounce settings internal MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-12-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110029_827692_92ED42B3 X-CRM114-Status: GOOD ( 18.59 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Instead of reading a bunch of PWM debounce settings from the Devicetree, set reasonable values inside the driver that are known to work across multiple boards. There are no current users of these DT properties, so no backward compatibility needs to be maintained. The properties can be properly introduced in the binding in the future if different boards really need to override them. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 70 ++++++++++++++++++++++------------------ sound/soc/codecs/mt6359-accdet.h | 20 ------------ 2 files changed, 38 insertions(+), 52 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index e04cfb9a607aa5d38d46329eb1387545fda37ccc..6728f1018c992fc9d4e4133dbaf091d256567683 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -43,6 +43,25 @@ #define ACCDET_DIGITAL_FASTDISCHARGE BIT(13) #define ACCDET_AD_FASTDISCHRAGE BIT(14) +/* Debounce time = (DEBOUNCE/32768) sec */ +#define ACCDET_DEBOUNCE0_625MS 0x800 +#define ACCDET_DEBOUNCE1_625MS 0x800 +#define ACCDET_DEBOUNCE3_976US 0x20 +#define ACCDET_DEBOUNCE_AUXADC_2MS 0x44 +/* PWM frequency = 32768/(PWM_WIDTH + 1) Hz */ +#define ACCDET_PWM_WIDTH_25_580HZ 0x500 +/* Duty cycle = (PWM_THRESH + 1) / (PWM_WIDTH + 1) */ +#define ACCDET_PWM_THRESH_100PERCENT ACCDET_PWM_WIDTH_25_580HZ +#define ACCDET_RISE_DELAY 0x1f0 +#define ACCDET_FALL_DELAY 1 +#define ACCDET_EINT_DEBOUNCE0_1MS 5 +#define ACCDET_EINT_DEBOUNCE1_900US 3 +#define ACCDET_EINT_DEBOUNCE2_900US 3 +#define ACCDET_EINT_DEBOUNCE3_1MS 5 +#define ACCDET_EINT_INVERTER_DEBOUNCE_256MS 0xe +#define ACCDET_EINT_CMPMEN_PWM_WIDTH_400MS 4 +#define ACCDET_EINT_CMPMEN_PWM_THRESH_2MS 1 + static struct platform_driver mt6359_accdet_driver; static const struct snd_soc_component_driver mt6359_accdet_soc_driver; @@ -130,7 +149,7 @@ static unsigned int mt6359_accdet_jd_setting(struct mt6359_accdet *priv) } else if (priv->jd_sts == M_PLUG_OUT) { /* set debounce to 1ms */ accdet_set_debounce(priv, eint_state000, - priv->data->pwm_deb->eint_debounce0); + ACCDET_EINT_DEBOUNCE0_1MS); } else { dev_dbg(priv->dev, "should not be here %s()\n", __func__); } @@ -241,11 +260,11 @@ static void mt6359_accdet_recover_jd_setting(struct mt6359_accdet *priv) /* recover accdet debounce0,3 */ accdet_set_debounce(priv, accdet_state000, - priv->data->pwm_deb->debounce0); + ACCDET_DEBOUNCE0_625MS); accdet_set_debounce(priv, accdet_state001, - priv->data->pwm_deb->debounce1); + ACCDET_DEBOUNCE1_625MS); accdet_set_debounce(priv, accdet_state011, - priv->data->pwm_deb->debounce3); + ACCDET_DEBOUNCE3_976US); priv->jack_type = 0; priv->accdet_status = 0x3; @@ -390,7 +409,7 @@ static void mt6359_accdet_jd_work(struct work_struct *work) priv->jack_plugged = false; accdet_set_debounce(priv, accdet_state011, - priv->data->pwm_deb->debounce3); + ACCDET_DEBOUNCE3_976US); regmap_update_bits(priv->regmap, ACCDET_SW_EN_ADDR, ACCDET_SW_EN_MASK_SFT, 0); mt6359_accdet_recover_jd_setting(priv); @@ -497,7 +516,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) int ret; struct device *dev = priv->dev; struct device_node *node = NULL; - int pwm_deb[15] = {0}; unsigned int tmp = 0; node = of_get_child_by_name(dev->parent->of_node, "accdet"); @@ -514,12 +532,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) if (ret) priv->data->mic_mode = 2; - ret = of_property_read_u32_array(node, "mediatek,pwm-deb-setting", - pwm_deb, ARRAY_SIZE(pwm_deb)); - /* debounce8(auxadc debounce) is default, needn't get from dts */ - if (!ret) - memcpy(priv->data->pwm_deb, pwm_deb, sizeof(pwm_deb)); - priv->data->hp_eint_high = of_property_read_bool(node, "mediatek,hp-eint-high"); ret = of_property_read_u32(node, "mediatek,eint-detect-mode", @@ -554,8 +566,8 @@ static void config_digital_init_by_mode(struct mt6359_accdet *priv) { /* enable eint cmpmem pwm */ regmap_write(priv->regmap, ACCDET_EINT_CMPMEN_PWM_THRESH_ADDR, - (priv->data->pwm_deb->eint_pwm_width << 4 | - priv->data->pwm_deb->eint_pwm_thresh)); + (ACCDET_EINT_CMPMEN_PWM_WIDTH_400MS << 4 | + ACCDET_EINT_CMPMEN_PWM_THRESH_2MS)); /* DA signal stable */ if (priv->caps & ACCDET_PMIC_EINT0) { regmap_write(priv->regmap, ACCDET_DA_STABLE_ADDR, @@ -675,22 +687,22 @@ static void mt6359_accdet_init(struct mt6359_accdet *priv) mdelay(1); /* init the debounce time (debounce/32768)sec */ accdet_set_debounce(priv, accdet_state000, - priv->data->pwm_deb->debounce0); + ACCDET_DEBOUNCE0_625MS); accdet_set_debounce(priv, accdet_state001, - priv->data->pwm_deb->debounce1); + ACCDET_DEBOUNCE1_625MS); accdet_set_debounce(priv, accdet_state011, - priv->data->pwm_deb->debounce3); + ACCDET_DEBOUNCE3_976US); accdet_set_debounce(priv, accdet_auxadc, - priv->data->pwm_deb->debounce4); + ACCDET_DEBOUNCE_AUXADC_2MS); accdet_set_debounce(priv, eint_state000, - priv->data->pwm_deb->eint_debounce0); + ACCDET_EINT_DEBOUNCE0_1MS); accdet_set_debounce(priv, eint_state001, - priv->data->pwm_deb->eint_debounce1); + ACCDET_EINT_DEBOUNCE1_900US); accdet_set_debounce(priv, eint_state011, - priv->data->pwm_deb->eint_debounce3); + ACCDET_EINT_DEBOUNCE3_1MS); accdet_set_debounce(priv, eint_inverter_state000, - priv->data->pwm_deb->eint_inverter_debounce); + ACCDET_EINT_INVERTER_DEBOUNCE_256MS); regmap_update_bits(priv->regmap, RG_ACCDET_RST_ADDR, RG_ACCDET_RST_MASK_SFT, BIT(RG_ACCDET_RST_SFT)); @@ -705,12 +717,12 @@ static void mt6359_accdet_init(struct mt6359_accdet *priv) /* init pwm frequency, duty & rise/falling delay */ regmap_write(priv->regmap, ACCDET_PWM_WIDTH_ADDR, - REGISTER_VAL(priv->data->pwm_deb->pwm_width)); + REGISTER_VAL(ACCDET_PWM_WIDTH_25_580HZ)); regmap_write(priv->regmap, ACCDET_PWM_THRESH_ADDR, - REGISTER_VAL(priv->data->pwm_deb->pwm_thresh)); + REGISTER_VAL(ACCDET_PWM_THRESH_100PERCENT)); regmap_write(priv->regmap, ACCDET_RISE_DELAY_ADDR, - (priv->data->pwm_deb->fall_delay << 15 | - priv->data->pwm_deb->rise_delay)); + (ACCDET_FALL_DELAY << 15 | + ACCDET_RISE_DELAY)); regmap_read(priv->regmap, RG_AUDPWDBMICBIAS1_ADDR, ®); if (priv->data->mic_vol <= 7) { @@ -806,12 +818,6 @@ static int mt6359_accdet_probe(struct platform_device *pdev) if (!priv->data) return -ENOMEM; - priv->data->pwm_deb = devm_kzalloc(&pdev->dev, - sizeof(struct pwm_deb_settings), - GFP_KERNEL); - if (!priv->data->pwm_deb) - return -ENOMEM; - priv->regmap = mt6397->regmap; if (IS_ERR(priv->regmap)) { ret = PTR_ERR(priv->regmap); diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 99de5037a2294b62cb8535fc45dbf4c6fafb5c7f..287201eebe0330fa170093fd6192bf5694c30469 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -50,30 +50,10 @@ enum { eint_inverter_state000, }; -struct pwm_deb_settings { - unsigned int pwm_width; - unsigned int pwm_thresh; - unsigned int fall_delay; - unsigned int rise_delay; - unsigned int debounce0; - unsigned int debounce1; - unsigned int debounce3; - unsigned int debounce4; - unsigned int eint_pwm_width; - unsigned int eint_pwm_thresh; - unsigned int eint_debounce0; - unsigned int eint_debounce1; - unsigned int eint_debounce2; - unsigned int eint_debounce3; - unsigned int eint_inverter_debounce; - -}; - struct dts_data { unsigned int mic_vol; unsigned int mic_mode; bool hp_eint_high; - struct pwm_deb_settings *pwm_deb; unsigned int eint_detect_mode; unsigned int eint_comp_vth; }; From patchwork Wed Mar 5 18:58:28 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003344 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 71E8CC19F32 for ; Wed, 5 Mar 2025 20:33:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=3/SuLpIDOGIzG4acCvS1Ea6XeYeptoIArOdxdaJ6WxQ=; b=3uGXAGKC0bq5yBRPzGDGigi0L8 mJMF83j+cL1NgxMfbL1rpYe+3gj0Nx14sl0gqTU8pFW1m6Q8f6Yr9qt9C7gQceVjGUPgaJIQoNay3 OEMU+j/xCbvwXysLf7p60KfuaJHYp8IEwHjgpvNjyCpJH0sys42HIrUpom/Gja2u8DGOogmkMuIxz obRiwcwER1GIuTwxA+FeWLmb9uX8L0z/Eyxq1DUqypiPzwyLBj/Qs9lUyiWjHST1oDM5H5DQCmBL9 ue37Ox7N6C/eggkW5hjCHW3sHa5Hj3tDuL2qzXG3AfGlCOfbA7dJXLxbHFKmN6yxCygV5/4Wm8nqi 8xlBLriQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpvR4-00000009EKc-1NJY; Wed, 05 Mar 2025 20:33:46 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyt-000000090SV-1UHt; Wed, 05 Mar 2025 19:00:36 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201234; bh=sk4Gc1vWzvy1bYpW1lA/DEQpt1YQ8vmHPR+8OGEM/CA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=luwRYf32cWy/WvYGSLXbhaUsKDdYFgNZe7HWdMA+GyAvXeC+EJKfgEe0jMzXy4QV3 U2YqP7K6Tn6HhKHRN/NIgqqS/rnaenL6uRJ2KH19EQdKV/PH/aHNO6ceox9+q3nJWj 5wKoxv2tMsLKuEYTvJeGJadte6tGzwd60QgHg8jzCc4998QaTL/E4So8T3kS/mr6AY ktkfv0Eik9wEFPPS5CUIGZqYq3AWQr8AKRtoJLu34ucsdNpjHXU0fs+22z0VEQu2rq ejWAL5h17FRUxRM+p9+mOdv3axPxrdcVauIIkLnCQ6sVW0loayhBsIB9UIrTX7veqe UOxbJUzoIPpIw== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id E478017E0343; Wed, 5 Mar 2025 20:00:28 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:28 -0300 Subject: [PATCH v4 13/19] ASoC: mediatek: mt6359-accdet: Always use eint detect mode 4 MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-13-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110035_534762_11559FD0 X-CRM114-Status: GOOD ( 15.62 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The driver currently reads a mediatek,eint-detect-mode property from DT, which determines certain register configurations. Since there are no users of the property, it doesn't directly describe the hardware, and the default value (4) is known to work across multiple boards, remove the handling for this property and always assume mode 4 is used. The property can be properly introduced in the binding in the future if different boards actually need different configurations. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 208 +++++++++++++-------------------------- sound/soc/codecs/mt6359-accdet.h | 1 - 2 files changed, 70 insertions(+), 139 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index 6728f1018c992fc9d4e4133dbaf091d256567683..83e65b6d5845dea00a8a77d68df4b7df1f62a87c 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -81,31 +81,22 @@ static void recover_eint_setting(struct mt6359_accdet *priv); static unsigned int adjust_eint_analog_setting(struct mt6359_accdet *priv) { - if (priv->data->eint_detect_mode == 0x3 || - priv->data->eint_detect_mode == 0x4) { - /* ESD switches off */ - regmap_update_bits(priv->regmap, - RG_ACCDETSPARE_ADDR, 1 << 8, 0); - } - if (priv->data->eint_detect_mode == 0x4) { - if (priv->caps & ACCDET_PMIC_EINT0) { - /* enable RG_EINT0CONFIGACCDET */ - regmap_update_bits(priv->regmap, - RG_EINT0CONFIGACCDET_ADDR, - RG_EINT0CONFIGACCDET_MASK_SFT, - BIT(RG_EINT0CONFIGACCDET_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* enable RG_EINT1CONFIGACCDET */ - regmap_update_bits(priv->regmap, - RG_EINT1CONFIGACCDET_ADDR, - RG_EINT1CONFIGACCDET_MASK_SFT, - BIT(RG_EINT1CONFIGACCDET_SFT)); - } - /*select 500k, use internal resistor */ - regmap_update_bits(priv->regmap, RG_EINT0HIRENB_ADDR, - RG_EINT0HIRENB_MASK_SFT, - BIT(RG_EINT0HIRENB_SFT)); + /* ESD switches off */ + regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, 1 << 8, 0); + if (priv->caps & ACCDET_PMIC_EINT0) { + /* enable RG_EINT0CONFIGACCDET */ + regmap_update_bits(priv->regmap, RG_EINT0CONFIGACCDET_ADDR, + RG_EINT0CONFIGACCDET_MASK_SFT, + BIT(RG_EINT0CONFIGACCDET_SFT)); + } else if (priv->caps & ACCDET_PMIC_EINT1) { + /* enable RG_EINT1CONFIGACCDET */ + regmap_update_bits(priv->regmap, RG_EINT1CONFIGACCDET_ADDR, + RG_EINT1CONFIGACCDET_MASK_SFT, + BIT(RG_EINT1CONFIGACCDET_SFT)); } + /*select 500k, use internal resistor */ + regmap_update_bits(priv->regmap, RG_EINT0HIRENB_ADDR, + RG_EINT0HIRENB_MASK_SFT, BIT(RG_EINT0HIRENB_SFT)); return 0; } @@ -123,18 +114,14 @@ static unsigned int adjust_eint_digital_setting(struct mt6359_accdet *priv) ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, 0); } - if (priv->data->eint_detect_mode == 0x4) { - if (priv->caps & ACCDET_PMIC_EINT0) { - /* set DA stable signal */ - regmap_update_bits(priv->regmap, - ACCDET_DA_STABLE_ADDR, - ACCDET_EINT0_CEN_STABLE_MASK_SFT, 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* set DA stable signal */ - regmap_update_bits(priv->regmap, - ACCDET_DA_STABLE_ADDR, - ACCDET_EINT1_CEN_STABLE_MASK_SFT, 0); - } + if (priv->caps & ACCDET_PMIC_EINT0) { + /* set DA stable signal */ + regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, + ACCDET_EINT0_CEN_STABLE_MASK_SFT, 0); + } else if (priv->caps & ACCDET_PMIC_EINT1) { + /* set DA stable signal */ + regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, + ACCDET_EINT1_CEN_STABLE_MASK_SFT, 0); } return 0; } @@ -159,27 +146,19 @@ static unsigned int mt6359_accdet_jd_setting(struct mt6359_accdet *priv) static void recover_eint_analog_setting(struct mt6359_accdet *priv) { - if (priv->data->eint_detect_mode == 0x3 || - priv->data->eint_detect_mode == 0x4) { - /* ESD switches on */ - regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, - 1 << 8, 1 << 8); - } - if (priv->data->eint_detect_mode == 0x4) { - if (priv->caps & ACCDET_PMIC_EINT0) { - /* disable RG_EINT0CONFIGACCDET */ - regmap_update_bits(priv->regmap, - RG_EINT0CONFIGACCDET_ADDR, - RG_EINT0CONFIGACCDET_MASK_SFT, 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* disable RG_EINT1CONFIGACCDET */ - regmap_update_bits(priv->regmap, - RG_EINT1CONFIGACCDET_ADDR, - RG_EINT1CONFIGACCDET_MASK_SFT, 0); - } - regmap_update_bits(priv->regmap, RG_EINT0HIRENB_ADDR, - RG_EINT0HIRENB_MASK_SFT, 0); + /* ESD switches on */ + regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, 1 << 8, 1 << 8); + if (priv->caps & ACCDET_PMIC_EINT0) { + /* disable RG_EINT0CONFIGACCDET */ + regmap_update_bits(priv->regmap, RG_EINT0CONFIGACCDET_ADDR, + RG_EINT0CONFIGACCDET_MASK_SFT, 0); + } else if (priv->caps & ACCDET_PMIC_EINT1) { + /* disable RG_EINT1CONFIGACCDET */ + regmap_update_bits(priv->regmap, RG_EINT1CONFIGACCDET_ADDR, + RG_EINT1CONFIGACCDET_MASK_SFT, 0); } + regmap_update_bits(priv->regmap, RG_EINT0HIRENB_ADDR, + RG_EINT0HIRENB_MASK_SFT, 0); } static void recover_eint_digital_setting(struct mt6359_accdet *priv) @@ -193,37 +172,30 @@ static void recover_eint_digital_setting(struct mt6359_accdet *priv) ACCDET_EINT1_M_SW_EN_ADDR, ACCDET_EINT1_M_SW_EN_MASK_SFT, 0); } - if (priv->data->eint_detect_mode == 0x4) { + if (priv->caps & ACCDET_PMIC_EINT0) { /* enable eint0cen */ - if (priv->caps & ACCDET_PMIC_EINT0) { - /* enable eint0cen */ - regmap_update_bits(priv->regmap, - ACCDET_DA_STABLE_ADDR, - ACCDET_EINT0_CEN_STABLE_MASK_SFT, - BIT(ACCDET_EINT0_CEN_STABLE_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* enable eint1cen */ - regmap_update_bits(priv->regmap, - ACCDET_DA_STABLE_ADDR, - ACCDET_EINT1_CEN_STABLE_MASK_SFT, - BIT(ACCDET_EINT1_CEN_STABLE_SFT)); - } + regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, + ACCDET_EINT0_CEN_STABLE_MASK_SFT, + BIT(ACCDET_EINT0_CEN_STABLE_SFT)); + } else if (priv->caps & ACCDET_PMIC_EINT1) { + /* enable eint1cen */ + regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, + ACCDET_EINT1_CEN_STABLE_MASK_SFT, + BIT(ACCDET_EINT1_CEN_STABLE_SFT)); } - if (priv->data->eint_detect_mode != 0x1) { - if (priv->caps & ACCDET_PMIC_EINT0) { - /* enable inverter */ - regmap_update_bits(priv->regmap, - ACCDET_EINT0_INVERTER_SW_EN_ADDR, - ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* enable inverter */ - regmap_update_bits(priv->regmap, - ACCDET_EINT1_INVERTER_SW_EN_ADDR, - ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT1_INVERTER_SW_EN_SFT)); - } + if (priv->caps & ACCDET_PMIC_EINT0) { + /* enable inverter */ + regmap_update_bits(priv->regmap, + ACCDET_EINT0_INVERTER_SW_EN_ADDR, + ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, + BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); + } else if (priv->caps & ACCDET_PMIC_EINT1) { + /* enable inverter */ + regmap_update_bits(priv->regmap, + ACCDET_EINT1_INVERTER_SW_EN_ADDR, + ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, + BIT(ACCDET_EINT1_INVERTER_SW_EN_SFT)); } } @@ -534,13 +506,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) priv->data->hp_eint_high = of_property_read_bool(node, "mediatek,hp-eint-high"); - ret = of_property_read_u32(node, "mediatek,eint-detect-mode", - &priv->data->eint_detect_mode); - if (ret) { - /* eint detection mode equals to EINT HW Mode */ - priv->data->eint_detect_mode = 0x4; - } - ret = of_property_read_u32(node, "mediatek,eint-num", &tmp); if (ret) tmp = 0; @@ -592,31 +557,16 @@ static void config_digital_init_by_mode(struct mt6359_accdet *priv) /* enable PWM */ regmap_write(priv->regmap, ACCDET_CMP_PWM_EN_ADDR, 0x67); /* enable inverter detection */ - if (priv->data->eint_detect_mode == 0x1) { - /* disable inverter detection */ - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, - ACCDET_EINT0_INVERTER_SW_EN_ADDR, - ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, - 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, - ACCDET_EINT1_INVERTER_SW_EN_ADDR, - ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, - 0); - } - } else { - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, - ACCDET_EINT0_INVERTER_SW_EN_ADDR, - ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, - ACCDET_EINT1_INVERTER_SW_EN_ADDR, - ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT1_INVERTER_SW_EN_SFT)); - } + if (priv->caps & ACCDET_PMIC_EINT0) { + regmap_update_bits(priv->regmap, + ACCDET_EINT0_INVERTER_SW_EN_ADDR, + ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, + BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); + } else if (priv->caps & ACCDET_PMIC_EINT1) { + regmap_update_bits(priv->regmap, + ACCDET_EINT1_INVERTER_SW_EN_ADDR, + ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, + BIT(ACCDET_EINT1_INVERTER_SW_EN_SFT)); } if (priv->data->hp_eint_high) { @@ -649,28 +599,10 @@ static void config_eint_init_by_mode(struct mt6359_accdet *priv) regmap_update_bits(priv->regmap, RG_NCP_PDDIS_EN_ADDR, RG_NCP_PDDIS_EN_MASK_SFT, BIT(RG_NCP_PDDIS_EN_SFT)); - if (priv->data->eint_detect_mode == 0x1 || - priv->data->eint_detect_mode == 0x2 || - priv->data->eint_detect_mode == 0x3) { - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, - RG_EINT0CONFIGACCDET_ADDR, - RG_EINT0CONFIGACCDET_MASK_SFT, - BIT(RG_EINT0CONFIGACCDET_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, - RG_EINT1CONFIGACCDET_ADDR, - RG_EINT1CONFIGACCDET_MASK_SFT, - BIT(RG_EINT1CONFIGACCDET_SFT)); - } - } - - if (priv->data->eint_detect_mode != 0x1) { - /* current detect set 0.25uA */ - regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, - 0x3 << RG_ACCDETSPARE_SFT, - 0x3 << RG_ACCDETSPARE_SFT); - } + /* current detect set 0.25uA */ + regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, + 0x3 << RG_ACCDETSPARE_SFT, + 0x3 << RG_ACCDETSPARE_SFT); regmap_write(priv->regmap, RG_EINTCOMPVTH_ADDR, val | priv->data->eint_comp_vth << RG_EINTCOMPVTH_SFT); } diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 287201eebe0330fa170093fd6192bf5694c30469..ff5cd6ea1b06f045b6e1b9f6bc53ef80d78e3b92 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -54,7 +54,6 @@ struct dts_data { unsigned int mic_vol; unsigned int mic_mode; bool hp_eint_high; - unsigned int eint_detect_mode; unsigned int eint_comp_vth; }; From patchwork Wed Mar 5 18:58:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003343 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 A000CC282EC for ; Wed, 5 Mar 2025 20:33:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=xUEvfbDvqFJX8BS/qTLkrdVfCLPJHXz8LJB2C2M4iGg=; b=EOahNueBmNBPHuvvW86GVeyr1a h+sfX3QjVVBRnJ6Zw9EpByaEDSej0xw9OOCZ+9V9iIO0d0L6EDGn8M0muZGY3lQCHu0TVueIf4OQg lKQNADrTyZv7QG4MY354pA5Bmn/YpMu4sni+npgIod+HWTaj+HqZtcWM/wa8yfVY6FaiDIEuxsoED /E8D8Dr/JOt9qO/E6Fa/UUV10Gd5wFYnAcMPQyJ0zdUer9ZifGFG7J9JCLx6Pop59tD4T1gjTyyZN ziDiHghkr/udkcBOELohu05ibQupcJZa/R2sWExCrp8q5J+og3Pse3yMAE0hK9Cq1U4q+HfqtUQfI RB1BamRA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpvR5-00000009ELp-1Ggs; Wed, 05 Mar 2025 20:33:47 +0000 Received: from bali.collaboradmins.com ([2a01:4f8:201:9162::2]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptyy-000000090Tb-3okd; Wed, 05 Mar 2025 19:00:42 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201239; bh=+Xc6IIOKZkGqVJGEvJQSuFw6mN/ozG3/FVvAqN7VwII=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=mBuCKKNT447dwqs28x1gxkklz/uKTpGXc73NT0EFCy4ZyrwV5IivAmcdYcPhX2FDi 3Nn3YFrVZKi5HJojDgNvUWVsH6J4onywbjJm9531D36r7p7Q8xIjYO1cRC7gtAYWJc pG3EGpPlhKM/0ir5fDEdlCMvhHFArammhQpYPMaq1jt7DKaKydOJjtAQ0dX55O/TTV kiv1ejP4fZZtLA//Rciza4KneOqngif90POX2lIBPW8yxE3LW7DgHZdlZ+Z0Z1KT0A 5Hh2gehoeODE/tLvdK8UZnHPkL0P0Ftu438gqTHFnYrmvDQvdQ5eviQ6s7vuGy2k+4 Zenj0YYopkVHw== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 8B0C117E0649; Wed, 5 Mar 2025 20:00:34 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:29 -0300 Subject: [PATCH v4 14/19] ASoC: mediatek: mt6359-accdet: Always set micbias1 to 2.8V MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-14-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110041_084315_9A78822A X-CRM114-Status: GOOD ( 14.80 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The driver currently reads a mediatek,mic-vol property from DT to determine the micbias1 setting to configure in hardware. Since there are no current users of the property and the default value (2.8V) is known to work on multiple boards, remove the code handling this property and instead always configure the micbias1 to 2.8V. The property can be properly introduced in the binding in the future if it really turns out that different boards need different configurations. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 23 +++-------------------- sound/soc/codecs/mt6359-accdet.h | 1 - 2 files changed, 3 insertions(+), 21 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index 83e65b6d5845dea00a8a77d68df4b7df1f62a87c..a31e084560c7643b14fb71871699e3167075d9d9 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -494,11 +494,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) if (!node) return -EINVAL; - ret = of_property_read_u32(node, "mediatek,mic-vol", - &priv->data->mic_vol); - if (ret) - priv->data->mic_vol = 8; - ret = of_property_read_u32(node, "mediatek,mic-mode", &priv->data->mic_mode); if (ret) @@ -657,22 +652,10 @@ static void mt6359_accdet_init(struct mt6359_accdet *priv) ACCDET_RISE_DELAY)); regmap_read(priv->regmap, RG_AUDPWDBMICBIAS1_ADDR, ®); - if (priv->data->mic_vol <= 7) { - /* micbias1 <= 2.7V */ - regmap_write(priv->regmap, RG_AUDPWDBMICBIAS1_ADDR, - reg | (priv->data->mic_vol << RG_AUDMICBIAS1VREF_SFT) | - RG_AUDMICBIAS1LOWPEN_MASK_SFT); - } else if (priv->data->mic_vol == 8) { - /* micbias1 = 2.8v */ - regmap_write(priv->regmap, RG_AUDPWDBMICBIAS1_ADDR, - reg | (3 << RG_AUDMICBIAS1HVEN_SFT) | + /* micbias1 = 2.8v */ + regmap_write(priv->regmap, RG_AUDPWDBMICBIAS1_ADDR, + reg | (3 << RG_AUDMICBIAS1HVEN_SFT) | RG_AUDMICBIAS1LOWPEN_MASK_SFT); - } else if (priv->data->mic_vol == 9) { - /* micbias1 = 2.85v */ - regmap_write(priv->regmap, RG_AUDPWDBMICBIAS1_ADDR, - reg | (1 << RG_AUDMICBIAS1HVEN_SFT) | - RG_AUDMICBIAS1LOWPEN_MASK_SFT); - } /* mic mode setting */ regmap_read(priv->regmap, RG_AUDACCDETMICBIAS0PULLLOW_ADDR, ®); if (priv->data->mic_mode == HEADSET_MODE_1) { diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index ff5cd6ea1b06f045b6e1b9f6bc53ef80d78e3b92..46dcd4759230a5190434b9b7c785e8b9ed12fd3d 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -51,7 +51,6 @@ enum { }; struct dts_data { - unsigned int mic_vol; unsigned int mic_mode; bool hp_eint_high; unsigned int eint_comp_vth; From patchwork Wed Mar 5 18:58:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003276 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 DBAE7C19F32 for ; Wed, 5 Mar 2025 19:27:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=b3Jr1ifBgAUOTlSFImIY854lPBEJ8Tg18l+oA7ulQUw=; b=FW/X70OV2qHbybeEyew5dGg3t2 szgyYwx4ZSpbivl+0bWvO8qerg5q8FzuqHFzwcImMB7/3Qaz2TDJNmMGVfZbq0iiOb09U/gD6jbnr 6iskoA+scIvIcihqxLKlemByftli4ENvqtONvRSaWfVJKjjtjBWz3z20wQUAniUInaJmao54xaclG zPOz8OvTMQpqY3p/5t2VX30yIYJc1nB9AnJ3DbB6C30oa/4u/AIhF3UQrxkfn7FbqU1bT+PHjgx9i d32Wgy9xOUrzjAsy/yzP2mOqXjLxc9vOz66OZaq16/gkxawg9V1CYEEBVZS0A90Qpi31gkbyAL1WX 2/jEo9xw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuOV-0000000947X-3bVZ; Wed, 05 Mar 2025 19:27:03 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptz4-000000090Vl-2Rr5; Wed, 05 Mar 2025 19:00:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201245; bh=rBci4f69I/d/dQvGhQC94bd2AW9ZiKT0dsBk2rxvf9k=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=MeHRO+Ne0zhBlmqoR48VPl3x64Upn/204cmF/N3fkcX9Hjh1eQwCuvD5/4/qqfEX1 63v11+lJcN2qcNAVWOJhnqRUfET9r6y4TPkNYqYzW2gZkNSMKy5x55VHMyvzkKbEpi KSB8uj+PXwSy62vtOV1s6GY3h2eGXb54FRC12mtyA9tlH+McOsAf5Fu66h6aiCEpyS 224p1W1vPb1ljbZoHUOO/3VVJ31KmAGFXhU90cHKSXfXZw7XuXnpU+dWLhOzlur18L gyBrCeMKiPKBlHinGE4vUJweItwJhlHS/onQl1XcGFOg5L8BGWgGKQK06AGRb+ssXg DmQPvUMLTqd6g== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 3170117E0147; Wed, 5 Mar 2025 20:00:40 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:30 -0300 Subject: [PATCH v4 15/19] ASoC: mediatek: mt6359-accdet: Always configure hardware as mic-mode 2 MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-15-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110046_763294_4308BB03 X-CRM114-Status: GOOD ( 15.27 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The driver currently reads a mediatek,mic-mode property from DT to determine certain register configurations. Since there are no current users of the property, the property doesn't directly reflect the hardware and the default value (2) is known to work on multiple boards, remove the code handling this property and instead always configure the hardware according to the known to work default. This property can be properly introduced in the binding in the future if it really turns out that different boards need different configurations. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 43 ++++++---------------------------------- sound/soc/codecs/mt6359-accdet.h | 5 ----- 2 files changed, 6 insertions(+), 42 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index a31e084560c7643b14fb71871699e3167075d9d9..12697b02faff1be39317116cd7d8ffa359f2cd4e 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -494,11 +494,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) if (!node) return -EINVAL; - ret = of_property_read_u32(node, "mediatek,mic-mode", - &priv->data->mic_mode); - if (ret) - priv->data->mic_mode = 2; - priv->data->hp_eint_high = of_property_read_bool(node, "mediatek,hp-eint-high"); ret = of_property_read_u32(node, "mediatek,eint-num", &tmp); @@ -658,38 +653,12 @@ static void mt6359_accdet_init(struct mt6359_accdet *priv) RG_AUDMICBIAS1LOWPEN_MASK_SFT); /* mic mode setting */ regmap_read(priv->regmap, RG_AUDACCDETMICBIAS0PULLLOW_ADDR, ®); - if (priv->data->mic_mode == HEADSET_MODE_1) { - /* ACC mode*/ - regmap_write(priv->regmap, RG_AUDACCDETMICBIAS0PULLLOW_ADDR, - reg | RG_ACCDET_MODE_ANA11_MODE1); - /* enable analog fast discharge */ - regmap_update_bits(priv->regmap, RG_ANALOGFDEN_ADDR, - RG_ANALOGFDEN_MASK_SFT, - BIT(RG_ANALOGFDEN_SFT)); - regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, - 0x3 << 11, 0x3 << 11); - } else if (priv->data->mic_mode == HEADSET_MODE_2) { - /* DCC mode Low cost mode without internal bias */ - regmap_write(priv->regmap, RG_AUDACCDETMICBIAS0PULLLOW_ADDR, - reg | RG_ACCDET_MODE_ANA11_MODE2); - /* enable analog fast discharge */ - regmap_update_bits(priv->regmap, RG_ANALOGFDEN_ADDR, - 0x3 << RG_ANALOGFDEN_SFT, - 0x3 << RG_ANALOGFDEN_SFT); - } else if (priv->data->mic_mode == HEADSET_MODE_6) { - /* DCC mode Low cost mode with internal bias, - * bit8 = 1 to use internal bias - */ - regmap_write(priv->regmap, RG_AUDACCDETMICBIAS0PULLLOW_ADDR, - reg | RG_ACCDET_MODE_ANA11_MODE6); - regmap_update_bits(priv->regmap, RG_AUDPWDBMICBIAS1_ADDR, - RG_AUDMICBIAS1DCSW1PEN_MASK_SFT, - BIT(RG_AUDMICBIAS1DCSW1PEN_SFT)); - /* enable analog fast discharge */ - regmap_update_bits(priv->regmap, RG_ANALOGFDEN_ADDR, - 0x3 << RG_ANALOGFDEN_SFT, - 0x3 << RG_ANALOGFDEN_SFT); - } + /* DCC mode Low cost mode without internal bias */ + regmap_write(priv->regmap, RG_AUDACCDETMICBIAS0PULLLOW_ADDR, + reg | RG_ACCDET_MODE_ANA11_MODE2); + /* enable analog fast discharge */ + regmap_update_bits(priv->regmap, RG_ANALOGFDEN_ADDR, + 0x3 << RG_ANALOGFDEN_SFT, 0x3 << RG_ANALOGFDEN_SFT); config_eint_init_by_mode(priv); config_digital_init_by_mode(priv); diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 46dcd4759230a5190434b9b7c785e8b9ed12fd3d..579373807c414130b2a7384db4978e01cf1d046c 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -12,10 +12,6 @@ #define ACCDET_DEVNAME "accdet" -#define HEADSET_MODE_1 (1) -#define HEADSET_MODE_2 (2) -#define HEADSET_MODE_6 (6) - #define MT6359_ACCDET_NUM_BUTTONS 4 #define MT6359_ACCDET_JACK_MASK (SND_JACK_HEADPHONE | \ SND_JACK_HEADSET | \ @@ -51,7 +47,6 @@ enum { }; struct dts_data { - unsigned int mic_mode; bool hp_eint_high; unsigned int eint_comp_vth; }; From patchwork Wed Mar 5 18:58:31 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003277 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 87E0BC19F32 for ; Wed, 5 Mar 2025 19:28:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=YYNtxPVUnt7W8sYLGkFWE1IWI/6tJSKZf7D/QJmfTL4=; b=0g/tKb2mYbesN0zOTdH1/QcN2o 9LmlgyVQ5d/gr6OIK4xwWvuqNMIdiFNFUbPxqu4/YUmKEnE8wN5GOY00aIW0PncxMQM3kf/GBBocP DCw+7S74rNq+7C3k5Lz4HPyzQA345gJOCSsmlw8sI202cQnQGAgSl+N6neC3Nty5j0mtfBI2tRM89 Pn+tgmulgjyiqCBeHbweHauzLfQp0DxrnOYI6xELJLoQvyGTvJ93K3tQmk+W3bc1xXNOmo6DXWuOZ lKNLJ2kdl+aHAKn9dDsd4TeznuFFd1AwIu3Cj3XL18vqgRzixM27qGqT3iRGnxMnUXvtoNXiJLd3e wIIWtuiQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuQ5-000000094LT-3K9D; Wed, 05 Mar 2025 19:28:41 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptzA-000000090XJ-0Clh; Wed, 05 Mar 2025 19:00:53 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201250; bh=UtaKHqK3+fgfZE111SW1PU59SBdv6NpsckijEheGGYc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=bt09DITDhDHr6BcjLLw3dplzAzkMk9iEeSH8U36Ow9mXHLYRwDNfK8xvj2DzT3AOA C66WtEZDivhObsGiuVzPIt4WP89xFCNMjNsPiJ0v5gUlKxrNBgO8sT4PkW1WzmzkA9 fDXK8SAYkuwEsR7UNgjkWpYbWNiwk53oWK8QHfV2X/Ci3UWlIrQQaNUnCNW4vHewgS 0OTF3Er8N1Hi0+tdC6H97FaJDeXhcnTx89lU6u746oqPkLq0gzDkUSMa0kSNo5U0O1 KSMB8QQlhG0ZcbgAihtNngxuYctFiD0mWPwRMLA5tbQ7o/egaYaS03JWvkCyDXq2Q1 WbbLEDAXCYrgw== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id B2BD317E0343; Wed, 5 Mar 2025 20:00:45 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:31 -0300 Subject: [PATCH v4 16/19] ASoC: mediatek: mt6359-accdet: Always set comp-vth to 1.6V MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-16-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110052_225085_52906690 X-CRM114-Status: GOOD ( 14.43 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The driver currently reads a mediatek,eint-comp-vth property from DT to determine the voltage threshold of the EINT comparator. Since there are no current users of the property and setting it to 1.6V is known to work across multiple boards, remove the code handling this property and instead always configure it to 1.6V. The property can be properly introduced in the binding in the future if it really turns out that different boards need different configurations. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 8 ++------ sound/soc/codecs/mt6359-accdet.h | 1 - 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index 12697b02faff1be39317116cd7d8ffa359f2cd4e..3f6a97e8de8d174e59e512d53135fadc5765b5c1 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -61,6 +61,7 @@ #define ACCDET_EINT_INVERTER_DEBOUNCE_256MS 0xe #define ACCDET_EINT_CMPMEN_PWM_WIDTH_400MS 4 #define ACCDET_EINT_CMPMEN_PWM_THRESH_2MS 1 +#define ACCDET_EINT_COMP_VTH_1600MV 2 static struct platform_driver mt6359_accdet_driver; static const struct snd_soc_component_driver mt6359_accdet_soc_driver; @@ -506,11 +507,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) else if (tmp == 2) priv->caps |= ACCDET_PMIC_BI_EINT; - ret = of_property_read_u32(node, "mediatek,eint-comp-vth", - &priv->data->eint_comp_vth); - if (ret) - priv->data->eint_comp_vth = 0x0; - of_node_put(node); dev_warn(priv->dev, "accdet caps=%x\n", priv->caps); @@ -594,7 +590,7 @@ static void config_eint_init_by_mode(struct mt6359_accdet *priv) 0x3 << RG_ACCDETSPARE_SFT, 0x3 << RG_ACCDETSPARE_SFT); regmap_write(priv->regmap, RG_EINTCOMPVTH_ADDR, - val | priv->data->eint_comp_vth << RG_EINTCOMPVTH_SFT); + val | ACCDET_EINT_COMP_VTH_1600MV << RG_EINTCOMPVTH_SFT); } static void mt6359_accdet_init(struct mt6359_accdet *priv) diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 579373807c414130b2a7384db4978e01cf1d046c..288b8fbf7c5efaee6520a2c0a5845e156f3b805d 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -48,7 +48,6 @@ enum { struct dts_data { bool hp_eint_high; - unsigned int eint_comp_vth; }; struct mt6359_accdet { From patchwork Wed Mar 5 18:58:32 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003278 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 68883C28B24 for ; Wed, 5 Mar 2025 19:30:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Wu6qZkZ1iHy77wxTGZ2aX47sKcBovBFRU4IVLIRcIeE=; b=KBFeuSYD+3Wj8HQaz4uyV3CLna zJAu1oa3uOJQShNwA/o/zpGAvnlPtIzzroBn+pTVFc3erQ4OfwxOCdU93ZSvoErjROsTjzdT+BLOh IkGQi00FpPOwPhiuIWRs8RYpiP5kMvM8WPJR55N87Pbume8PXm0U+DwAPsgPD6+xgRWM8ulU1etRF LMxdu/FbxMa4AXP3fGI95/IrSPuHVnYtHC3aO0h99rICZRZIA6NN1aC1XbkuKlWKYJDsr1gLD4bfF 6fOUqdQgx0WrUq2Q4TTYS6fVqRXWJf3Tan4p1nLLmN4/61KMvRPgErjpnSyRJDMHSOL8A7fxTrIQc Bn9YOwIw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuRe-000000094eX-3ZdX; Wed, 05 Mar 2025 19:30:18 +0000 Received: from bali.collaboradmins.com ([2a01:4f8:201:9162::2]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptzG-000000090Yd-1Pn2; Wed, 05 Mar 2025 19:00:59 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201256; bh=wjZmjmhM6PnilSdM4uO4ct3TDNZO044budbRnrFXjT8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=ISNG8ZiTf1EZqXrPOGc3dX2beGSO99sRgCdoFefvRb3ktXWf7jWdmNiuRqQ4jBg33 CjYMNviP1e8021oHLyNgluyAn+GGe6V4MmTW9PPJAXnsmtmJzDjoP6aquYutEE4B5A t08rkuupDRV/BqYrJ0E3FQEbJ1ZYllk46OfQH8Sz4JpL1Ls8rFNyvvcS+EgDjThHjG 40FbFU8ruAImXYDRjDAZq3ozeCCJtI+NSJRHRJf9f/oFQJh4oldmZYabLsrlAyG3Au GLZGpl3rDYhDdrrJeg+pU6QqneDYkNeBBV44ZkBAOyLGZSH2FMJZkv/eSI0ytNXPrg EXKbH47A+GDJA== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 581DA17E0147; Wed, 5 Mar 2025 20:00:51 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:32 -0300 Subject: [PATCH v4 17/19] ASoC: mediatek: mt6359-accdet: Always use EINT0 IRQ MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-17-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110058_711887_95F4FD6C X-CRM114-Status: GOOD ( 20.54 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The ACCDET block can generate two distinct EINT interrupts: EINT0 and EINT1, and which is enabled is currently determined by mediatek,eint-num property in DT. However, only EINT0 is used on the boards that are known to have working ACCDET. Since there are no current users of the property, remove its handling and instead always enable EINT0. The property can be properly introduced in the binding in the future if it really turns out that other boards require EINT1. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- sound/soc/codecs/mt6359-accdet.c | 187 +++++++++------------------------------ sound/soc/codecs/mt6359-accdet.h | 1 - 2 files changed, 43 insertions(+), 145 deletions(-) diff --git a/sound/soc/codecs/mt6359-accdet.c b/sound/soc/codecs/mt6359-accdet.c index 3f6a97e8de8d174e59e512d53135fadc5765b5c1..b1e63f3f7fa44687b1cac47c0e33f68a28e15a47 100644 --- a/sound/soc/codecs/mt6359-accdet.c +++ b/sound/soc/codecs/mt6359-accdet.c @@ -31,10 +31,6 @@ #define REGISTER_VAL(x) ((x) - 1) /* mt6359 accdet capability */ -#define ACCDET_PMIC_EINT0 BIT(2) -#define ACCDET_PMIC_EINT1 BIT(3) -#define ACCDET_PMIC_BI_EINT BIT(4) - #define ACCDET_PMIC_RSV_EINT BIT(7) #define ACCDET_RSV_KEY BIT(11) @@ -84,17 +80,10 @@ static unsigned int adjust_eint_analog_setting(struct mt6359_accdet *priv) { /* ESD switches off */ regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, 1 << 8, 0); - if (priv->caps & ACCDET_PMIC_EINT0) { - /* enable RG_EINT0CONFIGACCDET */ - regmap_update_bits(priv->regmap, RG_EINT0CONFIGACCDET_ADDR, - RG_EINT0CONFIGACCDET_MASK_SFT, - BIT(RG_EINT0CONFIGACCDET_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* enable RG_EINT1CONFIGACCDET */ - regmap_update_bits(priv->regmap, RG_EINT1CONFIGACCDET_ADDR, - RG_EINT1CONFIGACCDET_MASK_SFT, - BIT(RG_EINT1CONFIGACCDET_SFT)); - } + /* enable RG_EINT0CONFIGACCDET */ + regmap_update_bits(priv->regmap, RG_EINT0CONFIGACCDET_ADDR, + RG_EINT0CONFIGACCDET_MASK_SFT, + BIT(RG_EINT0CONFIGACCDET_SFT)); /*select 500k, use internal resistor */ regmap_update_bits(priv->regmap, RG_EINT0HIRENB_ADDR, RG_EINT0HIRENB_MASK_SFT, BIT(RG_EINT0HIRENB_SFT)); @@ -103,27 +92,13 @@ static unsigned int adjust_eint_analog_setting(struct mt6359_accdet *priv) static unsigned int adjust_eint_digital_setting(struct mt6359_accdet *priv) { - if (priv->caps & ACCDET_PMIC_EINT0) { - /* disable inverter */ - regmap_update_bits(priv->regmap, - ACCDET_EINT0_INVERTER_SW_EN_ADDR, - ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* disable inverter */ - regmap_update_bits(priv->regmap, - ACCDET_EINT1_INVERTER_SW_EN_ADDR, - ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, 0); - } + /* disable inverter */ + regmap_update_bits(priv->regmap, ACCDET_EINT0_INVERTER_SW_EN_ADDR, + ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, 0); - if (priv->caps & ACCDET_PMIC_EINT0) { - /* set DA stable signal */ - regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, - ACCDET_EINT0_CEN_STABLE_MASK_SFT, 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* set DA stable signal */ - regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, - ACCDET_EINT1_CEN_STABLE_MASK_SFT, 0); - } + /* set DA stable signal */ + regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, + ACCDET_EINT0_CEN_STABLE_MASK_SFT, 0); return 0; } @@ -149,55 +124,26 @@ static void recover_eint_analog_setting(struct mt6359_accdet *priv) { /* ESD switches on */ regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, 1 << 8, 1 << 8); - if (priv->caps & ACCDET_PMIC_EINT0) { - /* disable RG_EINT0CONFIGACCDET */ - regmap_update_bits(priv->regmap, RG_EINT0CONFIGACCDET_ADDR, - RG_EINT0CONFIGACCDET_MASK_SFT, 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* disable RG_EINT1CONFIGACCDET */ - regmap_update_bits(priv->regmap, RG_EINT1CONFIGACCDET_ADDR, - RG_EINT1CONFIGACCDET_MASK_SFT, 0); - } + /* disable RG_EINT0CONFIGACCDET */ + regmap_update_bits(priv->regmap, RG_EINT0CONFIGACCDET_ADDR, + RG_EINT0CONFIGACCDET_MASK_SFT, 0); regmap_update_bits(priv->regmap, RG_EINT0HIRENB_ADDR, RG_EINT0HIRENB_MASK_SFT, 0); } static void recover_eint_digital_setting(struct mt6359_accdet *priv) { - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, - ACCDET_EINT0_M_SW_EN_ADDR, - ACCDET_EINT0_M_SW_EN_MASK_SFT, 0); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, - ACCDET_EINT1_M_SW_EN_ADDR, - ACCDET_EINT1_M_SW_EN_MASK_SFT, 0); - } - if (priv->caps & ACCDET_PMIC_EINT0) { - /* enable eint0cen */ - regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, - ACCDET_EINT0_CEN_STABLE_MASK_SFT, - BIT(ACCDET_EINT0_CEN_STABLE_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* enable eint1cen */ - regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, - ACCDET_EINT1_CEN_STABLE_MASK_SFT, - BIT(ACCDET_EINT1_CEN_STABLE_SFT)); - } - - if (priv->caps & ACCDET_PMIC_EINT0) { - /* enable inverter */ - regmap_update_bits(priv->regmap, - ACCDET_EINT0_INVERTER_SW_EN_ADDR, - ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - /* enable inverter */ - regmap_update_bits(priv->regmap, - ACCDET_EINT1_INVERTER_SW_EN_ADDR, - ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT1_INVERTER_SW_EN_SFT)); - } + regmap_update_bits(priv->regmap, ACCDET_EINT0_M_SW_EN_ADDR, + ACCDET_EINT0_M_SW_EN_MASK_SFT, 0); + /* enable eint0cen */ + regmap_update_bits(priv->regmap, ACCDET_DA_STABLE_ADDR, + ACCDET_EINT0_CEN_STABLE_MASK_SFT, + BIT(ACCDET_EINT0_CEN_STABLE_SFT)); + + /* enable inverter */ + regmap_update_bits(priv->regmap, ACCDET_EINT0_INVERTER_SW_EN_ADDR, + ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, + BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); } static void recover_eint_setting(struct mt6359_accdet *priv) @@ -486,10 +432,8 @@ static irqreturn_t mt6359_accdet_irq(int irq, void *data) static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) { - int ret; struct device *dev = priv->dev; struct device_node *node = NULL; - unsigned int tmp = 0; node = of_get_child_by_name(dev->parent->of_node, "accdet"); if (!node) @@ -497,16 +441,6 @@ static int mt6359_accdet_parse_dt(struct mt6359_accdet *priv) priv->data->hp_eint_high = of_property_read_bool(node, "mediatek,hp-eint-high"); - ret = of_property_read_u32(node, "mediatek,eint-num", &tmp); - if (ret) - tmp = 0; - if (tmp == 0) - priv->caps |= ACCDET_PMIC_EINT0; - else if (tmp == 1) - priv->caps |= ACCDET_PMIC_EINT1; - else if (tmp == 2) - priv->caps |= ACCDET_PMIC_BI_EINT; - of_node_put(node); dev_warn(priv->dev, "accdet caps=%x\n", priv->caps); @@ -520,13 +454,8 @@ static void config_digital_init_by_mode(struct mt6359_accdet *priv) (ACCDET_EINT_CMPMEN_PWM_WIDTH_400MS << 4 | ACCDET_EINT_CMPMEN_PWM_THRESH_2MS)); /* DA signal stable */ - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_write(priv->regmap, ACCDET_DA_STABLE_ADDR, - ACCDET_EINT0_STABLE_VAL); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_write(priv->regmap, ACCDET_DA_STABLE_ADDR, - ACCDET_EINT1_STABLE_VAL); - } + regmap_write(priv->regmap, ACCDET_DA_STABLE_ADDR, + ACCDET_EINT0_STABLE_VAL); /* after receive n+1 number, interrupt issued. */ regmap_update_bits(priv->regmap, ACCDET_EINT_M_PLUG_IN_NUM_ADDR, ACCDET_EINT_M_PLUG_IN_NUM_MASK_SFT, @@ -543,17 +472,9 @@ static void config_digital_init_by_mode(struct mt6359_accdet *priv) /* enable PWM */ regmap_write(priv->regmap, ACCDET_CMP_PWM_EN_ADDR, 0x67); /* enable inverter detection */ - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, - ACCDET_EINT0_INVERTER_SW_EN_ADDR, - ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, - ACCDET_EINT1_INVERTER_SW_EN_ADDR, - ACCDET_EINT1_INVERTER_SW_EN_MASK_SFT, - BIT(ACCDET_EINT1_INVERTER_SW_EN_SFT)); - } + regmap_update_bits(priv->regmap, ACCDET_EINT0_INVERTER_SW_EN_ADDR, + ACCDET_EINT0_INVERTER_SW_EN_MASK_SFT, + BIT(ACCDET_EINT0_INVERTER_SW_EN_SFT)); if (priv->data->hp_eint_high) { /* EINT polarity inverse */ @@ -571,13 +492,8 @@ static void config_eint_init_by_mode(struct mt6359_accdet *priv) { unsigned int val = 0; - if (priv->caps & ACCDET_PMIC_EINT0) { - regmap_update_bits(priv->regmap, RG_EINT0EN_ADDR, - RG_EINT0EN_MASK_SFT, BIT(RG_EINT0EN_SFT)); - } else if (priv->caps & ACCDET_PMIC_EINT1) { - regmap_update_bits(priv->regmap, RG_EINT1EN_ADDR, - RG_EINT1EN_MASK_SFT, BIT(RG_EINT1EN_SFT)); - } + regmap_update_bits(priv->regmap, RG_EINT0EN_ADDR, RG_EINT0EN_MASK_SFT, + BIT(RG_EINT0EN_SFT)); /* ESD switches on */ regmap_update_bits(priv->regmap, RG_ACCDETSPARE_ADDR, 1 << 8, 1 << 8); @@ -727,35 +643,18 @@ static int mt6359_accdet_probe(struct platform_device *pdev) } } - if (priv->caps & ACCDET_PMIC_EINT0) { - priv->accdet_eint0 = platform_get_irq(pdev, 1); - if (priv->accdet_eint0 >= 0) { - ret = devm_request_threaded_irq(&pdev->dev, - priv->accdet_eint0, - NULL, mt6359_accdet_irq, - IRQF_TRIGGER_HIGH | IRQF_ONESHOT, - "ACCDET_EINT0", priv); - if (ret) { - dev_err(&pdev->dev, - "Failed to request eint0 IRQ (%d)\n", - ret); - return ret; - } - } - } else if (priv->caps & ACCDET_PMIC_EINT1) { - priv->accdet_eint1 = platform_get_irq(pdev, 2); - if (priv->accdet_eint1 >= 0) { - ret = devm_request_threaded_irq(&pdev->dev, - priv->accdet_eint1, - NULL, mt6359_accdet_irq, - IRQF_TRIGGER_HIGH | IRQF_ONESHOT, - "ACCDET_EINT1", priv); - if (ret) { - dev_err(&pdev->dev, - "Failed to request eint1 IRQ (%d)\n", - ret); - return ret; - } + priv->accdet_eint0 = platform_get_irq(pdev, 1); + if (priv->accdet_eint0 >= 0) { + ret = devm_request_threaded_irq(&pdev->dev, + priv->accdet_eint0, + NULL, mt6359_accdet_irq, + IRQF_TRIGGER_HIGH | IRQF_ONESHOT, + "ACCDET_EINT0", priv); + if (ret) { + dev_err(&pdev->dev, + "Failed to request eint0 IRQ (%d)\n", + ret); + return ret; } } diff --git a/sound/soc/codecs/mt6359-accdet.h b/sound/soc/codecs/mt6359-accdet.h index 288b8fbf7c5efaee6520a2c0a5845e156f3b805d..4156cbc7f0a1744226d5f28746bd13fec6c615b4 100644 --- a/sound/soc/codecs/mt6359-accdet.h +++ b/sound/soc/codecs/mt6359-accdet.h @@ -58,7 +58,6 @@ struct mt6359_accdet { unsigned int caps; int accdet_irq; int accdet_eint0; - int accdet_eint1; struct mutex res_lock; /* lock protection */ bool jack_plugged; unsigned int jack_type; From patchwork Wed Mar 5 18:58:33 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003283 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 44BD2C282DE for ; Wed, 5 Mar 2025 19:32:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=QIS/32Av80CPwFp2DKGQiMUYH9j+z5qLFhZJxaay/8M=; b=XVs8JbRhEDhLwC3aPyjo7BGiJ7 hO/F6fWVtBs9eF6+CE923n03dlrXXJ2+99RJHCwuiWnXCq9IumKyUExw2Oq0Rn0Icjb5nHg7vt8bC wO48qVCcZqM9NPXvT6Vk7vRSKd/fv4ns9VSf9E/4QuiivTumAPLmOQfy3enkyBk3IoXoAHpODpTgJ fuJnyXwsBUBrI2o6yV+jruJ1qvogWhqNIap296BSGRMoidXru9s1WbT34/nr91vc4zs1d26LQgW6i 9Ac8US5VyciEhLxRH/0n5WhRcc9TwbmOlf/V2cUMXdMvbU7sESRkn9ATgYAlnsebxsdCpTeJC6M3V hjtGbo0g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuTE-000000094oL-0SQs; Wed, 05 Mar 2025 19:31:56 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptzL-000000090aa-3UWz; Wed, 05 Mar 2025 19:01:06 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201262; bh=LBdY8EkTk1rXFVfcF9dktYOACXoiU+urwy0jL5VUVpg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=IuXf3BtYf76XRQvTBO3BSzS9ZgxSL5VE37LgFa1d0QSD+NtAGUaDeuTDK2Usk4rsL Qsw/zFrUoNS9nskW9RYtucozQNvq2gd1DfkNt5rgkLkAQOrYV72GqtESEzSliQpMJs MLxce7Dl84zmGr9Q67Yqa0lpjr5Y/7ud/7ZmUU326t/om+BdGXTCkLZyOntbpUYGju EBO7cm4IGURvJbMCVkGq2crXnYHHpK2QsyE4cx4BuUqpQQtu/i4GPp12w7LCZY0m/H 17I7RJm3XpqZREIfVR00ezZlh1/jrjlDmxm9wiick9HGot7v5igYdmL+zHv/Zmmc9z rQiBsd0CtdYVg== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 62CF817E0343; Wed, 5 Mar 2025 20:00:57 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:33 -0300 Subject: [PATCH v4 18/19] arm64: dts: mt6359: Add accessory detect node MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-18-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= , Andrew Perepech X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110104_006849_EE540205 X-CRM114-Status: UNSURE ( 9.48 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Add audio jack detection node. PMIC accessory detect driver will create an input device that will send key events on jack insertion/removal or accessory device key presses. Co-developed-by: Andrew Perepech Signed-off-by: Andrew Perepech Reviewed-by: AngeloGioacchino Del Regno Reviewed-by: Macpaul Lin Signed-off-by: Nícolas F. R. A. Prado --- arch/arm64/boot/dts/mediatek/mt6359.dtsi | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/arm64/boot/dts/mediatek/mt6359.dtsi b/arch/arm64/boot/dts/mediatek/mt6359.dtsi index 7b10f9c59819a9ad02319f00938f35c931091f9f..e24e4aeb3b9cafa2af56c62bc4c549df27d0ec73 100644 --- a/arch/arm64/boot/dts/mediatek/mt6359.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt6359.dtsi @@ -15,6 +15,10 @@ pmic_adc: adc { #io-channel-cells = <1>; }; + accdet: accdet { + compatible = "mediatek,mt6359-accdet"; + }; + mt6359codec: audio-codec { compatible = "mediatek,mt6359-codec"; }; From patchwork Wed Mar 5 18:58:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 14003284 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 E18F8C282DE for ; Wed, 5 Mar 2025 19:33:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=OgMGcp+HjUdCgRcwzw/J4Z9KEsYdTvfTKvKs5jeKhg8=; b=iDzPF/QLgmjro7BBgimizA5am5 xHKQZkKR4CkTrOEJVjLJRVxltM/g+2QqVhk5j+KuNkQtdid+bj5z9RPqqrjpsaZPpcuY5zBJmyZ5B lcCLyZn5+OPNTc+RRGx96SbDnuz9VcjcTogHbARoy8HnORD7l1t3PuEIxi/nkgLMfnWRQY+zGYAi1 wgllZKtvgK+zWWdWVP89C7VUFM90Bv29oMxnj1UZ0Os4PyOe/JwDhYhzXqeX7Ia/3DcwS6u+DVAfY rfUlU24GVDcDwwY/oqRi5LvFGMIKkrrI2Mm8OImrMSsgI3ElaAOqek0954rfSF1oL+Y7r+DzO78fo U+7bHlNA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tpuUn-000000094wL-0ndQ; Wed, 05 Mar 2025 19:33:33 +0000 Received: from bali.collaboradmins.com ([148.251.105.195]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tptzR-000000090dG-11XI; Wed, 05 Mar 2025 19:01:10 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1741201268; bh=SY9RMAoowz8kStVuJuN4tunjUBmeihKNe9Rk0kme8RY=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=PQtIzf62eW0GlpOSlr5Fgk291A6n8EhTi8vPORawuClgGOblg8Q9uqZwpCPCc4t7F aLRAxH850zcBKyzivPA3cQPYjHwYOJ7T9nil4op27shlLSzzqv1skvuSPfRQnLSlvG c1Klb5PfBA7rEv+dSKx7jUT3M+Bcip4S7ieqptpX7WwWlC3JXeCbju5dtvLT6dQX4c jMN295cwo4Kbflu7zDKmVJXRhV7F/0amm92o2ah+CTZJ0jdQcN50Wf5TZK3O41t2KO vc39RdsHr2VE9A7dX6fVyoRxJjrFkgDsDS9kR0IkWwfFstV2xNeH3hG33KAt5yH209 kdiW6rg17VoVA== Received: from [192.168.0.47] (unknown [IPv6:2804:14c:1a9:53ee::1004]) (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: nfraprado) by bali.collaboradmins.com (Postfix) with ESMTPSA id 0511B17E0147; Wed, 5 Mar 2025 20:01:02 +0100 (CET) From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= Date: Wed, 05 Mar 2025 15:58:34 -0300 Subject: [PATCH v4 19/19] arm64: defconfig: Enable MT6359 ACCDET MIME-Version: 1.0 Message-Id: <20250305-mt6359-accdet-dts-v4-19-e5ffa5ee9991@collabora.com> References: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> In-Reply-To: <20250305-mt6359-accdet-dts-v4-0-e5ffa5ee9991@collabora.com> To: Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , Sen Chu , Sean Wang , Macpaul Lin , Lee Jones , Jaroslav Kysela , Takashi Iwai , Catalin Marinas , Will Deacon Cc: kernel@collabora.com, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Mailer: b4 0.14.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250305_110109_422096_93786DD1 X-CRM114-Status: UNSURE ( 8.15 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Enable support for the ACCDET block in the MT6359 PMIC, which provides jack detection capabilities to MediaTek platforms. Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Nícolas F. R. A. Prado --- arch/arm64/configs/defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index 3a3706db29822036d25a7228f8936e2ad613b208..d4a6eeec8ba0db110dd831e146716a0e50cc294f 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -1066,6 +1066,7 @@ CONFIG_SND_SOC_WM8978=m CONFIG_SND_SOC_WSA881X=m CONFIG_SND_SOC_WSA883X=m CONFIG_SND_SOC_WSA884X=m +CONFIG_SND_SOC_MT6359_ACCDET=m CONFIG_SND_SOC_NAU8822=m CONFIG_SND_SOC_LPASS_WSA_MACRO=m CONFIG_SND_SOC_LPASS_VA_MACRO=m