From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2765CC4708E for ; Tue, 6 Dec 2022 09:50:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235266AbiLFJu1 (ORCPT ); Tue, 6 Dec 2022 04:50:27 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53150 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234108AbiLFJt6 (ORCPT ); Tue, 6 Dec 2022 04:49:58 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8B702F0C; Tue, 6 Dec 2022 01:49:26 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 4064EB818E4; Tue, 6 Dec 2022 09:49:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0901BC43143; Tue, 6 Dec 2022 09:49:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1670320164; bh=Elk+bS2olFo5I3kfhcfCnppXGyQSQXi3NhZl/A9ocb0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DEOzs6i4GaAWa86vFfndtgNVOyyGDHC9AUYZDpmyhSgbx2s46mKXoZIbri2K1loeO u92FrrG4ShJuJfCfPAn5is5AAUSEuZadc9+NVeTlOT16FUHMzajKkRIobVOmM1BS1+ dzD73z9lvYci0PEcXipqVFNamU/uoqLC5dKq0G1f4+6/B36f4gOKlzY3GXChPqinTg jMyYA15eg9qOKHZUk6sXiMgkfAYKF/NUWFS6iVVRGfyoJHIbSAA0AjK6vh42hF6dq3 fCSb7xye0/YXZXeAfUf5YuuVPB7wauyk5hNnYbYzkEyDxkIiTRgc5FKb4TCY6rhrs9 jU76AQClTh33g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Shengjiu Wang , Mark Brown , Sasha Levin , shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, alsa-devel@alsa-project.org, linuxppc-dev@lists.ozlabs.org Subject: [PATCH AUTOSEL 6.0 02/13] ASoC: fsl_micfil: explicitly clear CHnF flags Date: Tue, 6 Dec 2022 04:49:05 -0500 Message-Id: <20221206094916.987259-2-sashal@kernel.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20221206094916.987259-1-sashal@kernel.org> References: <20221206094916.987259-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Shengjiu Wang [ Upstream commit b776c4a4618ec1b5219d494c423dc142f23c4e8f ] There may be failure when start 1 channel recording after 8 channels recording. The reason is that the CHnF flags are not cleared successfully by software reset. This issue is triggerred by the change of clearing software reset bit. CHnF flags are write 1 clear bits. Clear them by force write. Signed-off-by: Shengjiu Wang Link: https://lore.kernel.org/r/1651925654-32060-2-git-send-email-shengjiu.wang@nxp.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/fsl/fsl_micfil.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sound/soc/fsl/fsl_micfil.c b/sound/soc/fsl/fsl_micfil.c index 8aa6871e0d42..4b86ef82fd93 100644 --- a/sound/soc/fsl/fsl_micfil.c +++ b/sound/soc/fsl/fsl_micfil.c @@ -205,6 +205,14 @@ static int fsl_micfil_reset(struct device *dev) if (ret) return ret; + /* + * Set SRES should clear CHnF flags, But even add delay here + * the CHnF may not be cleared sometimes, so clear CHnF explicitly. + */ + ret = regmap_write_bits(micfil->regmap, REG_MICFIL_STAT, 0xFF, 0xFF); + if (ret) + return ret; + return 0; } -- 2.35.1