[PATCH v1] ALSA: hda/tas2781: Fix the order of TAS2563 calibrated-data

A bug reported by one of my customers that the order of TAS2563 calibrated-data is incorrect, the correct way is to move R0_Low_%d and insert it between R0_%d and InvR0_%d.
Fixes: 4fe238513407 ("ALSA: hda/tas2781: Move and unified the calibrated-data getting function for SPI and I2C into the tas2781_hda lib") Signed-off-by: Shenghao Ding shenghao-ding@ti.com --- sound/hda/codecs/side-codecs/tas2781_hda_i2c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c b/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c index dbd71e173119..853ff5d87966 100644 --- a/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c +++ b/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c @@ -313,7 +313,7 @@ static int tas2563_save_calibration(struct tas2781_hda *h) { efi_guid_t efi_guid = tasdev_fct_efi_guid[LENOVO]; char *vars[TASDEV_CALIB_N] = { - "R0_%d", "InvR0_%d", "R0_Low_%d", "Power_%d", "TLim_%d" + "R0_%d", "R0_Low_%d", "InvR0_%d", "Power_%d", "TLim_%d" }; efi_char16_t efi_name[TAS2563_CAL_VAR_NAME_MAX]; unsigned long max_size = TAS2563_CAL_DATA_SIZE;

Hi Shenghao,
On Sun, 2025-08-31 at 20:43 +0800, Shenghao Ding wrote:
A bug reported by one of my customers that the order of TAS2563 calibrated-data is incorrect, the correct way is to move R0_Low_%d and insert it between R0_%d and InvR0_%d.
A similar fix is already in Takashi's tree for tas2563. https://lore.kernel.org/all/20250829160450.66623-1-soyer@irl.hu/
But I think, tas2781 also needs one for the order and one for the endianness. I left it out because it's easier for you with documentation.
Gergo

On Mon, 01 Sep 2025 08:18:06 +0200, Gergo Koteles wrote:
Hi Shenghao,
On Sun, 2025-08-31 at 20:43 +0800, Shenghao Ding wrote:
A bug reported by one of my customers that the order of TAS2563 calibrated-data is incorrect, the correct way is to move R0_Low_%d and insert it between R0_%d and InvR0_%d.
A similar fix is already in Takashi's tree for tas2563. https://lore.kernel.org/all/20250829160450.66623-1-soyer@irl.hu/
Right, I already took Gergo's fix on for-linus branch. Likely included in 6.17-rc5.
But I think, tas2781 also needs one for the order and one for the endianness. I left it out because it's easier for you with documentation.
If anything is missing for 6.17, please submit the fix ASAP.
thanks,
Takashi
participants (3)
-
Gergo Koteles
-
Shenghao Ding
-
Takashi Iwai