[PATCH REQUEST] ALSA: hda/tas2781: Add support for ASUS VivoBook 16 Flip TP3607SA

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Summary
=======
The ASUS VivoBook 16 Flip TP3607SA laptop contains TI TAS2781 smart
amplifiers but they are not supported by the current
snd_hda_scodec_tas2781_i2c driver. The driver fails to initialize with
"Platform not supported" error, preventing internal speakers from working.

Hardware Information
====================
Laptop Model: ASUS VivoBook 16 Flip TP3607SA_TP3607SA
BIOS Version: 1.0
PCI Audio Device: Intel Lunar Lake-M HD Audio Controller [8086:a828] (rev 10)
Subsystem Vendor: 0x1043 (ASUS)
Subsystem Device: 0x3e30
Audio Codec: Realtek ALC294 (HDA:10ec0294,10433e30,00100004)
Smart Amplifier: TI TAS2781 on I2C bus (ACPI ID: TIAS2781:00)

System Information
==================
OS: Ubuntu 25.04 (development)
Kernel: 6.14.0-1007-realtime
Audio System: PipeWire with SOF (Sound Open Firmware)
SOF Firmware: intel/sof-ipc4/lnl/sof-lnl.ri (version 2.12.0.1)
Topology: intel/sof-ipc4-tplg/sof-hda-generic-2ch.tplg

Current Behavior
================
1. Audio Detection: SOF firmware loads successfully and creates speaker
   sink in PipeWire
2. Audio Pipeline: Complete audio pipeline works (volume controls,
   routing, mixing)
3. TAS2781 Driver: Fails to bind with the following errors:

   tas2781-hda i2c-TIAS2781:00: Failed to get Speaker id.
   tas2781-hda i2c-TIAS2781:00: read acpi error, ret: -2
   tas2781-hda i2c-TIAS2781:00: error -ENOENT: Platform not supported
   tas2781-hda i2c-TIAS2781:00: probe with driver tas2781-hda failed
with error -2

4. Result: No sound from internal speakers (Bluetooth and HDMI audio
   work fine)

Technical Analysis
==================
- I2C Device Present: i2c-TIAS2781:00 device exists and is detected
- ACPI Information: Device has ACPI ID TIAS2781: but driver cannot read
  required configuration
- Volume Control: Audio shows active volume bars in pavucontrol,
  indicating software pipeline works
- Driver Status: TAS2781 driver loads but doesn't bind to the device due
  to platform whitelist

Evidence of TAS2781 Hardware
=============================
I2C device exists:
$ ls /sys/bus/i2c/devices/i2c-TIAS2781:00/
firmware_node modalias name power subsystem

Device modalias:
$ cat /sys/bus/i2c/devices/i2c-TIAS2781:00/modalias
acpi:TIAS2781:

PipeWire detects speaker sink:
$ pactl list sinks short | grep Speaker
60  alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Speaker__sink

Expected Behavior
=================
The TAS2781 driver should recognize the ASUS VivoBook 16 Flip TP3607SA
(subsystem ID 1043:3e30) as a supported platform and successfully
initialize the smart amplifiers, enabling internal speaker audio output.

Workarounds Attempted
=====================
1. Manual I2C device creation: Created tas2781 devices at addresses
   0x38-0x3b, but they fail with communication timeouts (error -121)
2. Driver parameters: Tried various modprobe options, but the driver
   doesn't expose platform override parameters
3. GPIO manipulation: Attempted to enable GPIO pins that might control
   amplifier power, without success
4. Kernel versions: Tested multiple 6.14.x kernels including recent
   versions with November 26, 2024 ASUS TAS2781 improvements

Request
=======
Please add support for ASUS VivoBook 16 Flip TP3607SA (subsystem ID
1043:3e30) to the TAS2781 driver's supported platform list. This appears
to be a matter of adding the device ID to the driver's whitelist and
possibly providing the appropriate ACPI configuration parsing.

Additional Notes
================
- This is a recent laptop model (2024) with Intel Lunar Lake platform
- Other ASUS laptops may have similar TAS2781 configurations
- The November 26, 2024 commit "ALSA: hda/tas2781: Add speaker id check
  for ASUS projects" suggests ongoing work on ASUS TAS2781 support
- Hardware detection is working perfectly through SOF firmware

Contact Information
===================
Available for testing patches or providing additional debugging
information.

Attachments
===========
- Full dmesg output available upon request
- ACPI tables dump available if needed
- Detailed hardware information via sudo lshw available



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux