Linux Sound subsystem development
 help / color / mirror / Atom feed
* [PATCH] ASoC: tas2783: Update loaded firmware names to linux-firmware 20260519
@ 2026-06-02 17:53 Bartosz Juraszewski
  2026-06-02 18:25 ` Mark Brown
  0 siblings, 1 reply; 4+ messages in thread
From: Bartosz Juraszewski @ 2026-06-02 17:53 UTC (permalink / raw)
  To: shenghao-ding, kevin-lu, baojun.xu, broonie
  Cc: lgirdwood, perex, tiwai, linux-sound, linux-kernel,
	Bartosz Juraszewski

In linux-firmware commit from 2026-05-19 `2f90f4fe5c67f51a8410907a...`
`ASoC: tas2783: Add Firmware files for tas2783A projects` by Baojun Xu
138 new firmware files for tas2783 were added, none of which are loaded
by the kernel. Kernel expects files to be named with the following
convention: "%04X-%1X-%1X.bin". However the added firmware files follow
"-0x%1X.bin" naming instead with `0x` hex prefix, which fails to load
resulting in following dmesg log:

  slave-tas2783 sdw:0:1:0102:0000:01:8: Direct firmware load for 1714-1-8.bin failed with error -2
  slave-tas2783 sdw:0:1:0102:0000:01:8: Failed to read fw binary 1714-1-8.bin
  slave-tas2783 sdw:0:1:0102:0000:01:b: Direct firmware load for 1714-1-B.bin failed with error -2
  slave-tas2783 sdw:0:1:0102:0000:01:b: Failed to read fw binary 1714-1-B.bin
  slave-tas2783 sdw:0:1:0102:0000:01:8: error playback without fw download
  slave-tas2783 sdw:0:1:0102:0000:01:8: ASoC error (-22): at snd_soc_dai_hw_params() on tas2783-codec

This same commit removes all 22 symlinks from WHENCE, that used naming
without the '0x' prefix to only 6 prevoiusly existing .bin files.

This patch adds `0x` prefix explicitly to the generated firmware name
allowing file to successfully load. This results in functioning audio on
my device - ASUS ProArt PX13 HN7306EAC, which uses 1714-1-0x8.bin and
1714-1-0xB.bin firmware files.

Tested on top of 7.1.0-rc6, but no changes exist in newest linux-next.

Signed-off-by: Bartosz Juraszewski <bjuraszewski@gmail.com>
---
 sound/soc/codecs/tas2783-sdw.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/tas2783-sdw.c b/sound/soc/codecs/tas2783-sdw.c
index 90008d2d06e2..58074d18f78a 100644
--- a/sound/soc/codecs/tas2783-sdw.c
+++ b/sound/soc/codecs/tas2783-sdw.c
@@ -1120,7 +1120,7 @@ static void tas_generate_fw_name(struct sdw_slave *slave, char *name, size_t siz
 	for (; dev; dev = dev->parent) {
 		if (dev->bus == &pci_bus_type) {
 			pci = to_pci_dev(dev);
-			scnprintf(name, size, "%04X-%1X-%1X.bin",
+			scnprintf(name, size, "%04X-%1X-0x%1X.bin",
 				  pci->subsystem_device, bus->link_id, unique_id);
 			pci_found = true;
 			break;
-- 
2.54.0


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

end of thread, other threads:[~2026-06-16 16:20 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-02 17:53 [PATCH] ASoC: tas2783: Update loaded firmware names to linux-firmware 20260519 Bartosz Juraszewski
2026-06-02 18:25 ` Mark Brown
2026-06-07  9:30   ` [PATCH v2] " Bartosz Juraszewski
2026-06-16 16:20     ` Mark Brown

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