summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorBaojun Xu <baojun.xu@ti.com>2024-12-30 07:49:10 +0100
committerTakashi Iwai <tiwai@suse.de>2024-12-30 11:39:39 +0100
commit6a451e2c5c03e27aa3ec36be424fccaa286c3ccd (patch)
tree80ec4808d534ecdf16ea9b8380903ed5da414943 /sound
parentALSA: usb-audio: US16x08: Initialize array before use (diff)
downloadlinux-6a451e2c5c03e27aa3ec36be424fccaa286c3ccd.tar.xz
linux-6a451e2c5c03e27aa3ec36be424fccaa286c3ccd.zip
ALSA: hda/tas2781: Ignore SUBSYS_ID not found for tas2563 projects
Driver will return error if no SUBSYS_ID found in BIOS(acpi). It will cause error in tas2563 projects, which have no SUBSYS_ID. Fixes: 4e7035a75da9 ("ALSA: hda/tas2781: Add speaker id check for ASUS projects") Signed-off-by: Baojun Xu <baojun.xu@ti.com> Link: https://lore.kernel.org/20241223225442.1358491-1-stuart.a.hayhurst@gmail.com Link: https://patch.msgid.link/20241230064910.1583-1-baojun.xu@ti.com Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/tas2781_hda_i2c.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/pci/hda/tas2781_hda_i2c.c b/sound/pci/hda/tas2781_hda_i2c.c
index 0af015806aba..0e42b87dadb8 100644
--- a/sound/pci/hda/tas2781_hda_i2c.c
+++ b/sound/pci/hda/tas2781_hda_i2c.c
@@ -142,6 +142,9 @@ static int tas2781_read_acpi(struct tasdevice_priv *p, const char *hid)
}
sub = acpi_get_subsystem_id(ACPI_HANDLE(physdev));
if (IS_ERR(sub)) {
+ /* No subsys id in older tas2563 projects. */
+ if (!strncmp(hid, "INT8866", sizeof("INT8866")))
+ goto end_2563;
dev_err(p->dev, "Failed to get SUBSYS ID.\n");
ret = PTR_ERR(sub);
goto err;
@@ -164,6 +167,7 @@ static int tas2781_read_acpi(struct tasdevice_priv *p, const char *hid)
p->speaker_id = NULL;
}
+end_2563:
acpi_dev_free_resource_list(&resources);
strscpy(p->dev_name, hid, sizeof(p->dev_name));
put_device(physdev);