From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtpout-04.galae.net (smtpout-04.galae.net [185.171.202.116]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B4238253F39; Wed, 29 Oct 2025 09:39:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.171.202.116 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761730774; cv=none; b=iMwT8Dzb8wvbruKr2v8RUjKUGVGN/0DtxMXEiHjFKzkIyuaCFM4GB1et5cjvs1huzbHfvHih13giZuIdiSmwwuiW/QqvhN3G18UCnaWZFUgZKQUBIH256eiQtvgLbFrUyuMG0456NEEe/BkOcOP0RYjbGpR0Gum+Ednc/0zxBL8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761730774; c=relaxed/simple; bh=oWm8NScouvxF5B/V1+dR8MbMfDQed3wk8wbeRwacjAI=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; b=oyUh0ch7zAfZubAF+k+XnlWeD677oLItB1nXgWa4J+tpfWdfpZkcA9h/FsjsK3STmTaYFmDjwcHkeTXJnocySZfIxyVCmuLFud4K/J8yA5SfVhTIaa5mSwaxooMtbXzZT9U/9k58Dk2wXQTaM8lJNWc293Pp5dxyPOlXx6pAsQI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com; spf=pass smtp.mailfrom=bootlin.com; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b=apECCSAo; arc=none smtp.client-ip=185.171.202.116 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bootlin.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="apECCSAo" Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-04.galae.net (Postfix) with ESMTPS id 73BE5C0BEBC; Wed, 29 Oct 2025 09:39:09 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id BC42B606E8; Wed, 29 Oct 2025 09:39:29 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 6729A117F19D2; Wed, 29 Oct 2025 10:39:23 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1761730768; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding; bh=ZSi6XucA1aEFKt7ZDjzWrgNyD/I168aK/er1u55pXSo=; b=apECCSAoB56fkwTJja52tXiAbgjamZ94tvXJ3ROh39wUtUqiyLeXe2X2ljeEhMiZ3/BVEX wYPbCt826krf7df7b0eIH9JBQ58vLcDiXtWF90KUuuMEKGsq0u2EN33WL/9SR5eKSw3Osg q0j3HbgvwQrSBtCNzTtD4kIRtMl+7Vt3yJUvFMdUbAGGAI2eTHdCcumslj3F8mxLjcR21z ghWJmKR1Zw1xQu43ZychpRGbUOCPWiC58guOfpVmJbTqJSAc3gsI5K+UC0opD+EiCx7r4b C6TMEkaf5yexjYCCElaMclw+L6c61QxbrxQCpvqE6Rm0cnCm5IgWwpNRdLJ2Tg== From: Herve Codina To: David Rhodes , Richard Fitzgerald , Liam Girdwood , Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Jaroslav Kysela , Takashi Iwai , Alexander Sverdlin , Nikita Shubin , Axel Lin , Brian Austin Cc: linux-sound@vger.kernel.org, patches@opensource.cirrus.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Thomas Petazzoni , Herve Codina Subject: [PATCH v2 0/4] Add support for an external Master Clock in the Cirrus CS4271 codec Date: Wed, 29 Oct 2025 10:39:16 +0100 Message-ID: <20251029093921.624088-1-herve.codina@bootlin.com> X-Mailer: git-send-email 2.51.0 Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Last-TLS-Session-Version: TLSv1.3 The Cirrus CS4271 codec can have its Master Clock provided by an external clock when no crystal is used. This series adds support for this external Master clock. The first patch in the series is not related to the clock but fixes an issue related to module loading and MODULE_DEVICE_TABLE() due to a driver split between i2c part and spi part. The next patch fixes regulator handling in component_probe() error path. The last two patches document the Master clock in the binding and implement this clock handling in the existing driver. Best regards, Hervé Changes v1 -> v2 v1: https://lore.kernel.org/lkml/20251016130340.1442090-1-herve.codina@bootlin.com/ - Patch 1: Add missing MODULE_DEVICE_TABLE(spi, ...) in spi part. - Patch 2 (new in v2) Disable regulators in component_probe() error path - Patch 3 (2 in v1) Add 'Reviewed-by: Krzysztof Kozlowski' - Patch 4 (3 in v1): Remove fsleep() call. Disable/enable the clock at suspend/resume. Remove the reset line assertion on errors (not needed). Herve Codina (4): ASoC: cs4271: Fix cs4271 I2C and SPI drivers automatic module loading ASoC: cs4271: Disable regulators in component_probe() error path ASoC: dt-bindings: cirrus,cs4271: Document mclk clock ASoC: cs4271: Add support for the external mclk .../bindings/sound/cirrus,cs4271.yaml | 10 +++++ sound/soc/codecs/cs4271-i2c.c | 6 +++ sound/soc/codecs/cs4271-spi.c | 13 ++++++ sound/soc/codecs/cs4271.c | 42 +++++++++++++------ sound/soc/codecs/cs4271.h | 1 - 5 files changed, 59 insertions(+), 13 deletions(-) -- 2.51.0