25 Apr
2024
25 Apr
'24
10:40 a.m.
On 4/25/24 16:36, Takashi Iwai wrote:
On Thu, 25 Apr 2024 09:54:17 +0200, Aaron Ma wrote:
On 4/25/24 15:52, Takashi Iwai wrote:
On Thu, 25 Apr 2024 09:20:00 +0200, Aaron Ma wrote: TI upstream the files in ti/tas2781 for linux-firmware. Make the driver find the correct files. Note that the upstream linux-firmware provides symlinks to ti/tas2781/* files, so it's not "incorrect", so far :)
$ find . -iname TIAS2781RCA2.bin ./ti/tas2781/TIAS2781RCA2.bin
Only one bin file found. Could you point it out clearly?
See WHENCE file. It has "Link:" entries, and copy-firmware.sh creates corresponding symlinks.
Oh, missed it. Retrieve the patch.
Thanks, Aaron
HTH,
Takashi
Thanks, Aaron
thanks, Takashi Signed-off-by: Aaron Ma <aaron.ma@canonical.com> --- include/sound/tas2781.h | 1 + sound/pci/hda/tas2781_hda_i2c.c | 2 +- sound/soc/codecs/tas2781-comlib.c | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/include/sound/tas2781.h b/include/sound/tas2781.h index 99ca3e401fd1..72119cc32c0f 100644 --- a/include/sound/tas2781.h +++ b/include/sound/tas2781.h @@ -21,6 +21,7 @@ /* version number */ #define TAS2781_DRV_VER 1 #define SMARTAMP_MODULE_NAME "tas2781" +#define TAS2781_FIRMWARE_ROOT "ti/tas2781/" #define TAS2781_GLOBAL_ADDR 0x40 #define TAS2563_GLOBAL_ADDR 0x48 #define TASDEVICE_RATES (SNDRV_PCM_RATE_44100 |\ diff --git a/sound/pci/hda/tas2781_hda_i2c.c b/sound/pci/hda/tas2781_hda_i2c.c index 75f7674c66ee..72dc1469655f 100644 --- a/sound/pci/hda/tas2781_hda_i2c.c +++ b/sound/pci/hda/tas2781_hda_i2c.c @@ -649,7 +649,7 @@ static void tasdev_fw_ready(const struct firmware *fmw, void *context) tasdevice_dsp_remove(tas_priv); tas_priv->fw_state = TASDEVICE_DSP_FW_PENDING; - scnprintf(tas_priv->coef_binaryname, 64, "TAS2XXX%04X.bin", + scnprintf(tas_priv->coef_binaryname, 64, "%sTAS2XXX%04X.bin", TAS2781_FIRMWARE_ROOT, codec->core.subsystem_id & 0xffff); ret = tasdevice_dsp_parser(tas_priv); if (ret) { diff --git a/sound/soc/codecs/tas2781-comlib.c b/sound/soc/codecs/tas2781-comlib.c index 3aa81514dad7..96fe1b855ec9 100644 --- a/sound/soc/codecs/tas2781-comlib.c +++ b/sound/soc/codecs/tas2781-comlib.c @@ -277,7 +277,7 @@ int tascodec_init(struct tasdevice_priv *tas_priv, void *codec, */ mutex_lock(&tas_priv->codec_lock); - scnprintf(tas_priv->rca_binaryname, 64, "%sRCA%d.bin", + scnprintf(tas_priv->rca_binaryname, 64, "%s%sRCA%d.bin", TAS2781_FIRMWARE_ROOT, tas_priv->dev_name, tas_priv->ndev); crc8_populate_msb(tas_priv->crc8_lkp_tbl, TASDEVICE_CRC8_POLYNOMIAL); tas_priv->codec = codec; -- 2.34.1