Skip to content
/ linux Public

Commit 16b65c8

Browse files
jimxbj-dotSasha Levin
authored andcommitted
ALSA: hda/tas2781: Ignore reset check for SPI device
[ Upstream commit 908ef80 ] 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> Link: https://patch.msgid.link/20260211030946.2330-1-baojun.xu@ti.com Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent 96c5ea9 commit 16b65c8

File tree

1 file changed

+7
-13
lines changed

1 file changed

+7
-13
lines changed

sound/hda/codecs/side-codecs/tas2781_hda_spi.c

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -634,7 +634,7 @@ static void tasdev_fw_ready(const struct firmware *fmw, void *context)
634634
struct tasdevice_priv *tas_priv = context;
635635
struct tas2781_hda *tas_hda = dev_get_drvdata(tas_priv->dev);
636636
struct hda_codec *codec = tas_priv->codec;
637-
int ret, val;
637+
int ret;
638638

639639
pm_runtime_get_sync(tas_priv->dev);
640640
guard(mutex)(&tas_priv->codec_lock);
@@ -673,20 +673,14 @@ static void tasdev_fw_ready(const struct firmware *fmw, void *context)
673673
tas_priv->rcabin.profile_cfg_id = 0;
674674

675675
tas_priv->fw_state = TASDEVICE_DSP_FW_ALL_OK;
676-
ret = tasdevice_spi_dev_read(tas_priv, tas_priv->index,
677-
TAS2781_REG_CLK_CONFIG, &val);
678-
if (ret < 0)
679-
goto out;
680676

681-
if (val == TAS2781_REG_CLK_CONFIG_RESET) {
682-
ret = tasdevice_prmg_load(tas_priv, 0);
683-
if (ret < 0) {
684-
dev_err(tas_priv->dev, "FW download failed = %d\n",
685-
ret);
686-
goto out;
687-
}
688-
tas_priv->fw_state = TASDEVICE_DSP_FW_ALL_OK;
677+
ret = tasdevice_prmg_load(tas_priv, 0);
678+
if (ret < 0) {
679+
dev_err(tas_priv->dev, "FW download failed = %d\n", ret);
680+
goto out;
689681
}
682+
tas_priv->fw_state = TASDEVICE_DSP_FW_ALL_OK;
683+
690684
if (tas_priv->fmw->nr_programs > 0)
691685
tas_priv->tasdevice[tas_priv->index].cur_prog = 0;
692686
if (tas_priv->fmw->nr_configurations > 0)

0 commit comments

Comments
 (0)