mirror of
https://github.com/torvalds/linux.git
synced 2026-03-14 02:06:15 +01:00
ALSA: hda/tas2781: Ignore reset check for SPI device
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>
This commit is contained in:
parent
3a6b7dc431
commit
908ef80e31
1 changed files with 7 additions and 13 deletions
|
|
@ -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)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue