Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp691964pxb; Mon, 25 Oct 2021 16:45:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy3GszdETtn9CuP7UVrpU2f8sUoe9vTn65usuHGhvQ+wMmiNZSiTh9yMZdWJTDQ09jCK4AX X-Received: by 2002:a17:907:96a5:: with SMTP id hd37mr15371247ejc.423.1635205517598; Mon, 25 Oct 2021 16:45:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1635205517; cv=none; d=google.com; s=arc-20160816; b=eZTzuHQeOLz3HDIlG99AHK481pw2ItaMTYX6z2AOTu9T99H5syddbPAn7uWpyKGs5d B1prSd3Fc/qWb6JYkTyBR+M6a0BH0wRdGx94YKkTr27gXFpKez6AMoMkNd9OjxEsSfY0 yiqQFFZHqxSry81S4aC5PxxSR+UiUUsRF0kmtK+bsqkWjKFAgT7Q68ViXDaX5n5D4Tn3 SxrMgdg8AxWGfSafJauDSLXvYh2gc2yH8tYJgEXFnX5qvspfBHZ0t1WE6z9dJXIGrWE3 oKheECNHsru4auIkPymkySB1KpXqTk8zJgHIbcAsO26Zv5qUcasu1Mijvk1iSJbpfU7t 6mpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=emK+PzS6Y3IMDatm90NA6so2t/gVsp2ov1Is+Xkx4WY=; b=sj/ZR20q4UvYmtkcwWZvRifQ6AeTa3T/MO3Oj5WK8mVkRwzZEGCz5OvIXBPlV2auSs 5xm+/S6avpWJq0xX/1tPcI8+qQC7THBabb2iWn3VkHR1q/K1kspGBQVBzi1n4/lgbHpp olLypkTxeGQDQcRf3kHm3RgDwUoXqIk3KDZDX9mnc5yarso7YtvydqG06HClWtjxUG8Y 7gWwieQ5Jb8w4Gwq0EaB0m8aGMlUXCgsFhLNb4o/N1sh6wT1tawpRDKCW7AySFYMscG5 pS4wbT8WNxZZ/ekKMlIOftTK7e3iUwCadrdGNlq1I2x/hUQwpQbmNJqnEECJcdW789LU I9zQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=j7p+iJJD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m7si1737150edq.149.2021.10.25.16.44.54; Mon, 25 Oct 2021 16:45:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=j7p+iJJD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237335AbhJYTk7 (ORCPT + 99 others); Mon, 25 Oct 2021 15:40:59 -0400 Received: from mail.kernel.org ([198.145.29.99]:53204 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236463AbhJYTer (ORCPT ); Mon, 25 Oct 2021 15:34:47 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 28C1B611AD; Mon, 25 Oct 2021 19:30:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1635190255; bh=v/FdeHnaRWW/wxO5CjQupOhXXOhIIAGcNSJzwamPsSU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=j7p+iJJDaGnsYjUE+B69bZjWNa+oWYyE5ACVwxSD6NbkwGNrSAph7sHy/MdkFqe6A ZVdeQQxNdWEDyzZK9oLk3pcIFth/yybRuR31EqYkUYJ1SSGUOjczHxHwh36RsZTEwT YYOTSsKKalb1v/upaPxC+vJyIiO/GTg+FSyALuUI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Shengjiu Wang , Charles Keepax , Mark Brown , Sasha Levin Subject: [PATCH 5.10 14/95] ASoC: wm8960: Fix clock configuration on slave mode Date: Mon, 25 Oct 2021 21:14:11 +0200 Message-Id: <20211025190958.954700333@linuxfoundation.org> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211025190956.374447057@linuxfoundation.org> References: <20211025190956.374447057@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Shengjiu Wang [ Upstream commit 6b9b546dc00797c74bef491668ce5431ff54e1e2 ] There is a noise issue for 8kHz sample rate on slave mode. Compared with master mode, the difference is the DACDIV setting, after correcting the DACDIV, the noise is gone. There is no noise issue for 48kHz sample rate, because the default value of DACDIV is correct for 48kHz. So wm8960_configure_clocking() should be functional for ADC and DAC function even if it is slave mode. In order to be compatible for old use case, just add condition for checking that sysclk is zero with slave mode. Fixes: 0e50b51aa22f ("ASoC: wm8960: Let wm8960 driver configure its bit clock and frame clock") Signed-off-by: Shengjiu Wang Acked-by: Charles Keepax Link: https://lore.kernel.org/r/1634102224-3922-1-git-send-email-shengjiu.wang@nxp.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/codecs/wm8960.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/sound/soc/codecs/wm8960.c b/sound/soc/codecs/wm8960.c index 9d325555e219..618692e2e0e4 100644 --- a/sound/soc/codecs/wm8960.c +++ b/sound/soc/codecs/wm8960.c @@ -742,9 +742,16 @@ static int wm8960_configure_clocking(struct snd_soc_component *component) int i, j, k; int ret; - if (!(iface1 & (1<<6))) { - dev_dbg(component->dev, - "Codec is slave mode, no need to configure clock\n"); + /* + * For Slave mode clocking should still be configured, + * so this if statement should be removed, but some platform + * may not work if the sysclk is not configured, to avoid such + * compatible issue, just add '!wm8960->sysclk' condition in + * this if statement. + */ + if (!(iface1 & (1 << 6)) && !wm8960->sysclk) { + dev_warn(component->dev, + "slave mode, but proceeding with no clock configuration\n"); return 0; } -- 2.33.0