public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] ALSA: hda/tas2781: Ignore reset check for SPI device
@ 2026-02-11  3:09 Baojun Xu
  2026-02-11  9:00 ` Takashi Iwai
  0 siblings, 1 reply; 2+ messages in thread
From: Baojun Xu @ 2026-02-11  3:09 UTC (permalink / raw)
  To: tiwai, hansg
  Cc: ilpo.jarvinen, broonie, andriy.shevchenko, shenghao-ding,
	13916275206, platform-driver-x86, linux-sound, linux-kernel,
	baojun.xu, letitia.tsai, bill.yu

In the SPI driver probe, the device should be in the default state, so the
device status check is not necessary. It should be forced to do the
firmware download as I2C device.

Signed-off-by: Baojun Xu <baojun.xu@ti.com>
---
v2:
 - No update, re-send.
---
 .../hda/codecs/side-codecs/tas2781_hda_spi.c  | 20 +++++++------------
 1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/sound/hda/codecs/side-codecs/tas2781_hda_spi.c b/sound/hda/codecs/side-codecs/tas2781_hda_spi.c
index 0c9b57b6ff55..f860e0eb7602 100644
--- a/sound/hda/codecs/side-codecs/tas2781_hda_spi.c
+++ b/sound/hda/codecs/side-codecs/tas2781_hda_spi.c
@@ -631,7 +631,7 @@ static void tasdev_fw_ready(const struct firmware *fmw, void *context)
 	struct tasdevice_priv *tas_priv = context;
 	struct tas2781_hda *tas_hda = dev_get_drvdata(tas_priv->dev);
 	struct hda_codec *codec = tas_priv->codec;
-	int ret, val;
+	int ret;
 
 	guard(pm_runtime_active_auto)(tas_priv->dev);
 	guard(mutex)(&tas_priv->codec_lock);
@@ -670,20 +670,14 @@ static void tasdev_fw_ready(const struct firmware *fmw, void *context)
 	tas_priv->rcabin.profile_cfg_id = 0;
 
 	tas_priv->fw_state = TASDEVICE_DSP_FW_ALL_OK;
-	ret = tasdevice_spi_dev_read(tas_priv, tas_priv->index,
-		TAS2781_REG_CLK_CONFIG, &val);
-	if (ret < 0)
-		goto out;
 
-	if (val == TAS2781_REG_CLK_CONFIG_RESET) {
-		ret = tasdevice_prmg_load(tas_priv, 0);
-		if (ret < 0) {
-			dev_err(tas_priv->dev, "FW download failed = %d\n",
-				ret);
-			goto out;
-		}
-		tas_priv->fw_state = TASDEVICE_DSP_FW_ALL_OK;
+	ret = tasdevice_prmg_load(tas_priv, 0);
+	if (ret < 0) {
+		dev_err(tas_priv->dev, "FW download failed = %d\n", ret);
+		goto out;
 	}
+	tas_priv->fw_state = TASDEVICE_DSP_FW_ALL_OK;
+
 	if (tas_priv->fmw->nr_programs > 0)
 		tas_priv->tasdevice[tas_priv->index].cur_prog = 0;
 	if (tas_priv->fmw->nr_configurations > 0)
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2] ALSA: hda/tas2781: Ignore reset check for SPI device
  2026-02-11  3:09 [PATCH v2] ALSA: hda/tas2781: Ignore reset check for SPI device Baojun Xu
@ 2026-02-11  9:00 ` Takashi Iwai
  0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2026-02-11  9:00 UTC (permalink / raw)
  To: Baojun Xu
  Cc: tiwai, hansg, ilpo.jarvinen, broonie, andriy.shevchenko,
	shenghao-ding, 13916275206, platform-driver-x86, linux-sound,
	linux-kernel, letitia.tsai, bill.yu

On Wed, 11 Feb 2026 04:09:46 +0100,
Baojun Xu wrote:
> 
> In the SPI driver probe, the device should be in the default state, so the
> device status check is not necessary. It should be forced to do the
> firmware download as I2C device.
> 
> Signed-off-by: Baojun Xu <baojun.xu@ti.com>

Thanks, applied now.


Takashi

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-02-11  9:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-11  3:09 [PATCH v2] ALSA: hda/tas2781: Ignore reset check for SPI device Baojun Xu
2026-02-11  9:00 ` Takashi Iwai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox