Bug 216816

Summary: No sound from Asus Zenbook S 13 OLED model UM5302TA sound model ALC294
Product: Drivers Reporter: Vishal Rao (vishalrao)
Component: Sound(ALSA)Assignee: Jaroslav Kysela (perex)
Status: REJECTED DOCUMENTED    
Severity: normal CC: mario.limonciello, tanure, vishalrao
Priority: P1    
Hardware: AMD   
OS: Linux   
Kernel Version: 6.1 Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg snippet confirming missing ACPI _DSD info in BIOS

Description Vishal Rao 2022-12-17 20:08:35 UTC
No sound on ASUS Zenbook laptop model UM5302TA based on AMD Ryzen 6800U CPU platform.

Also tried latest mainline kernel build 6.1-rc5 with no luck.

Came across this page: https://zentalk.asus.com/en/discussion/63549/linux-on-zenbook-s-13-oled

It talks about a small community patch that apparently resolves audio issue but not accepted to the kernel due to not being proper

I've also submitted a bug report to Ubuntu here: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1999968

It has attachments to various logs.
Comment 1 Mario Limonciello (AMD) 2022-12-19 22:46:25 UTC
Can you please attach your kernel log with mainline 6.1 kernel?  I expect that there is going to be something like this case/message coming up.

https://github.com/torvalds/linux/blob/v6.1/sound/pci/hda/cs35l41_hda.c#L1240

In that case it's the same bug as bug 216194.
If the _DSD information is missing from the DSDT then you'll need to report it to ASUS to get fixed in a BIOS upgrade.
Comment 2 Vishal Rao 2022-12-20 08:33:02 UTC
(In reply to Mario Limonciello (AMD) from comment #1)
> Can you please attach your kernel log with mainline 6.1 kernel?  I expect
> that there is going to be something like this case/message coming up.
> 
> https://github.com/torvalds/linux/blob/v6.1/sound/pci/hda/cs35l41_hda.c#L1240
> 
> In that case it's the same bug as bug 216194.
> If the _DSD information is missing from the DSDT then you'll need to report
> it to ASUS to get fixed in a BIOS upgrade.


Yes, looks like that's the case - attaching my dmesg snippet. Would you know how/where to report this to ASUS for them to work on updating the BIOS? I will also look around their website/forums to post this request. Thanks!
Comment 3 Vishal Rao 2022-12-20 08:33:44 UTC
Created attachment 303433 [details]
dmesg snippet confirming missing ACPI _DSD info in BIOS
Comment 4 Mario Limonciello (AMD) 2022-12-20 20:13:47 UTC
Yup, so it's a duplicate.  The thing about the CSC3551 is that it can be configured a bunch of different ways.  Without information from ASUS about how the design is wired up it's not possible to safely quirk it.  That's why it's best to get ASUS to issue a BIOS update to specify the _DSD values to fix it.

Guessing at how the amplifier should be configured without proper reference (to schematics or what Windows is doing) is a recipe for disaster.
Comment 5 Mario Limonciello (AMD) 2022-12-20 20:22:08 UTC
BTW: want to make sure you've seen this on the topic (from Cirrus):
https://lore.kernel.org/all/20220811152923.10143-1-faenkhauser@gmail.com/T/#me1286693b86126713b547986f1245b22fe24c6ed
Comment 6 Lucas Tanure 2023-01-09 08:34:54 UTC
Hi Guys,

I don't work for Cirrus anymore, so I can't help.
My advice is to report issues to: patches@opensource.cirrus.com

Also, the only way to propper configures the CSC3551 is to read the memory value from I2C or SPI in a Windows setup during a playback.
If you manage to read the content of the memory of CSC3551 during playback from windows, it should be easy to configure it properly for Linux.
The DSD part of BIOS is very important, but if the vendor is unwilling to help, that info could somehow make it to the source code.

Thanks
Lucas