Chances of ASUS Vivobook driver support?

I recently fresh installed Fedora KDE 43 on my new ASUS Vivobook 16 laptop. Everything works except the built in speakers.

Here I can download the .exe files for my laptop: https://www.asus.com/laptops/for-home/vivobook/asus-vivobook-16-flip-tp3607/helpdesk_download/?model2Name=TP3607SA

Version V3.1.26.4
4.21 MB
2025/01/10
SHA-256 :CEF9E2ECB4A9FFA1914D03DF83282E5C6F568DB76F4C66D7BE2219DE7321CE26
Severity : 
Critical


Description :
TI Smart Amplifier Driver package provide the Speaker protection and SPK calibration protection and fine tune with ASUS Audio Engineer

Minimum OS Version :
Windows 11 64-bit 24H2

Device List :
TAS2781

However I of course cannot use the .exe. What are the chances of this being community supported in the near future? Is there anyway I can help as a novice?

I booted an ubuntu 22.02 live USB to see if that worked, and there was only the ‘dummy output’ device detected there.

Hi,

The TAS2781 driver is already in Fedora kernel, I can see

static struct i2c_driver tas2781_hda_i2c_driver = {
.driver = {
.name = “tas2781-hda”,
.acpi_match_table = tas2781_acpi_hda_match,
.pm = &tas2781_hda_pm_ops,
},
.id_table = tas2781_hda_i2c_id,
.probe = tas2781_hda_i2c_probe,
.remove = tas2781_hda_i2c_remove,
};

in kernel-ark/sound/hda/codecs/side-codecs/tas2781_hda_i2c.c

ASUS laptop might be using a different ACPI ID that the driver doesn’t recognize yet, or there might be missing configuration for your exact model.

You could try installing i2c-tools and look for I2C devices with
sudo i2cdetect -l

I2C controller driver might not be loaded, which means the kernel can’t
talk to any I2C devices at all. If your I2C adapter is loaded, I would expect you to
see something similar to:

i2c-0 smbus SMBus I801 adapter at efa0 SMBus adapter

If the controller is not loaded, you could try loading the driver module using
the modprobe command, but I’m not sure which driver would you need (depends on
your chipset)

sudo modprobe i2c-i801

Also you may try asking at ALSA mailing list for some tricks to enable the driver.

Not totally certain what I’m looking at, but the output is as follows:

$ sudo i2cdetect -l
i2c-0   i2c             Synopsys DesignWare I2C adapter         I2C adapter
i2c-1   i2c             Synopsys DesignWare I2C adapter         I2C adapter
i2c-2   i2c             Synopsys DesignWare I2C adapter         I2C adapter
i2c-3   i2c             i915 gmbus dpa                          I2C adapter
i2c-4   i2c             i915 gmbus dpb                          I2C adapter
i2c-5   i2c             i915 gmbus dpc                          I2C adapter
i2c-6   i2c             i915 gmbus dpd                          I2C adapter
i2c-7   i2c             i915 gmbus dpe                          I2C adapter
i2c-8   i2c             i915 gmbus tc1                          I2C adapter
i2c-9   i2c             i915 gmbus tc2                          I2C adapter
i2c-10  i2c             i915 gmbus tc3                          I2C adapter
i2c-11  i2c             i915 gmbus tc4                          I2C adapter
i2c-12  i2c             AUX A/DDI A/PHY A                       I2C adapter
i2c-13  i2c             AUX USBC1/DDI TC1/PHY TC1               I2C adapter
i2c-14  i2c             AUX USBC2/DDI TC2/PHY TC2               I2C adapter

and I have the following errors:

$ sudo dmesg | grep tas2781
[   11.856678] tas2781-hda i2c-TIAS2781:00: Failed to get Speaker id.
[   11.856683] tas2781-hda i2c-TIAS2781:00: read acpi error, ret: -2
[   11.856685] tas2781-hda i2c-TIAS2781:00: error -ENOENT: Platform not supported
[   11.856734] tas2781-hda i2c-TIAS2781:00: probe with driver tas2781-hda failed with error -2

Seems there may not be a way yet: Heres someone in October asking for the same: Making sure you're not a bot!