Welcome to our peer-to-peer forums, where owners help owners. Need help now? Visit eSupport here.

English Community

Linux Operating SystemsOther Linux Discussions
All Forum Topics
Options

695 Posts

07-22-2019

Canada

478 Signins

5506 Page Views

  • Posts: 695
  • Registered: ‎07-22-2019
  • Location: Canada
  • Views: 5506
  • Message 41 of 71

Re:T14s AMD no HDMI audio on Linux

2021-05-27, 17:39 PM

Just finished testing the patch from @osnix on the T14 and it's working well there - as a note mine has a different board name than above (Mine is 20UDZ5DPUS). My system is a prototype unit which might be the reason....

 

I'll add the 20UDCTO1WW & 20UDS0DK00 as well but I agree that getting a list from the FW team would be ideal. I'm going to see if I can get that this evening before I push this - avoid messing up the maintainer if I can. If anybody has other IDs they see this issue on please let me know - I've tested on my X13AMD and that is working fine so I'm assuming it's OK

 

@Iluha  - I suspect that getting in the kernel fix, and having it rolled out to the stable kernels where it will get picked up by the various distro's, will be faster than the firmware rollout. I might be wrong, and I'll push both solutions, but everytime we do a firmware update there is a lot of testing that goes on. We can't impact Windows so that has to be tested too....and it all means FW updates are definitely not a fast process.

 

Mark

Reply
Options

695 Posts

07-22-2019

Canada

478 Signins

5506 Page Views

  • Posts: 695
  • Registered: ‎07-22-2019
  • Location: Canada
  • Views: 5506
  • Message 42 of 71

Re:T14s AMD no HDMI audio on Linux

2021-05-31, 15:12 PM

List of boards (for those interested)

T14 AMD : 20UD
P14s AMD: 20Y1
X13 AMD : 20UF
T14s AMD: 20UH

(The Campus T14 model using 20UJ is a bit odd - it shouldn't be really....but I left it in as a bonus)

 

I was testing the patch and made a few tweaks. I've sent it upstream, fingers crossed for smooth passage and I've cc'd it as a patch to go in the stable kernel so hopefully it makes it's way into distro's more quickly.

 

The Mic on ACP bridge is apparently used by Windows - so removing it isn't going to be a quick fix here (at least if I've understood it correctly - let me know if I'm missing anything). I did wonder if possibly some support is missing from Linux for this mode and will discuss with the AMD engineers - haven't had time to dig into the details.

I'm also following up with how we missed this in certification - it should really have been caught much earlier

 

Mark

Reply
Options

389 Posts

03-06-2021

Germany

220 Signins

2355 Page Views

  • Posts: 389
  • Registered: ‎03-06-2021
  • Location: Germany
  • Views: 2355
  • Message 43 of 71

Re:T14s AMD no HDMI audio on Linux

2021-05-31, 17:05 PM

@ MarkRHPearson wrote:

List of boards (for those interested)

T14 AMD : 20UD
P14s AMD: 20Y1
X13 AMD : 20UF
T14s AMD: 20UH

(The Campus T14 model using 20UJ is a bit odd - it shouldn' be really....but I left it in as a bonus)

 

I was testing the patch and made a few tweaks. I' sent it upstream, fingers crossed for smooth passage and I' cc' it as a patch to go in the stable kernel so hopefully it makes it' way into distro' more quickly.

 

 

The Mic on ACP bridge is apparently used by Windows - so removing it isn' going to be a quick fix here (at least if I' understood it correctly - let me know if I' missing anything). I did wonder if possibly some support is missing from Linux for this mode and will discuss with the AMD engineers - haven' had time to dig into the details.

I' also following up with how we missed this in certification - it should really have been caught much earlier.

 

 

Regarding the patch I saw, you moved from DMI_EXACT_MATCH() to DMI_MATCH() to cover all versions.

 

BTW, how is that even possible? The MIC is connected to HDA & ACP? And how does this work?

Is there something Windows access over EC directly?

 

Regarding OS match from BIOS, I don't even know how that could possibly work in Linux...

Calling \_OSI("Linux") from BIOS is ignored by default. Sure one can add acpi_osi=Linux

to kernel cmd, but that isn't Linux default.

 

Also if that is correct something like acpi_osi=!Linux acpi_osi='Windows <some version>' should make it

work or at least expose the code/interface to Linux.

 

One thing you may be able to test if you have the info from FW teams on how that works is to add

a quirk ( MIC_DISABLE_HDA_CODEC or something ) to thinkpad_acpi and poke the EC directly.

If that works, well we can think about how to enable/expose/workaround in Linux ( sound ).

 

Gabriel

Reply
Options

9 Posts

06-02-2021

United States of America

7 Signins

25 Page Views

  • Posts: 9
  • Registered: ‎06-02-2021
  • Location: United States of America
  • Views: 25
  • Message 44 of 71

Re:T14s AMD no HDMI audio on Linux

2021-06-02, 4:23 AM

Hi, P14s AMD Gen 1 (20Y1) user here on Gentoo.  My audio was working perfectly fine with Linux 5.12.7 and BIOS version 1.30, but as soon as I flashed BIOS 1.32 in an attempt to get suspend working, my audio has become completely broken.  By setting `snd-rn-pci-acp3x.dmic_acpi_check=0` as a kernel parameter or a module load option I can get my speakers working, but this has the effect of disabling my microphone.  I've tried applying @osnix 's patch with a slight modification to include my board name (`20Y1CTO1WW`), but that seems to have the exact same behavior as disabling the dmic acpi check, i.e. it fixes the speakers but not the mic.  Is there any known workaround for getting the mic working?  If not, can someone point me to a link to download BIOS 1.30?  Maybe I can get my audio working again if I downgrade.

 

In case it's helpful, here's the output of ` dmesg | grep snd` with the patch applied:

 

```

[    8.412440] snd_hda_intel 0000:07:00.1: enabling device (0000 -> 0002)
[    8.412585] snd_hda_intel 0000:07:00.6: enabling device (0000 -> 0002)
[    8.414475] snd_rn_pci_acp3x 0000:07:00.5: enabling device (0000 -> 0002)
[    8.414595] snd_rn_pci_acp3x 0000:07:00.5: ACPI settings override using DMI (ACP mic is not present)
[    8.418638] snd_hda_intel 0000:07:00.1: bound 0000:07:00.0 (ops 0xffffffff9e7441e0)
[    8.427427] snd_hda_codec_realtek hdaudioC1D0: autoconfig for ALC257: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[    8.427431] snd_hda_codec_realtek hdaudioC1D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[    8.427433] snd_hda_codec_realtek hdaudioC1D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[    8.427434] snd_hda_codec_realtek hdaudioC1D0:    mono: mono_out=0x0
[    8.427435] snd_hda_codec_realtek hdaudioC1D0:    inputs:
[    8.427435] snd_hda_codec_realtek hdaudioC1D0:      Mic=0x19

```

 

Update:

 

I found BIOS 1.30 here and downgraded, but it didn't resolve the audio problem.  I can't think of anything else that changed recently.  My linux-firmware is from 2021-05-13, but I think I've rebooted since then without any audio issues.  If anyone has any ideas I'd love to hear them.

Reply
Options

389 Posts

03-06-2021

Germany

220 Signins

2355 Page Views

  • Posts: 389
  • Registered: ‎03-06-2021
  • Location: Germany
  • Views: 2355
  • Message 45 of 71

Re:T14s AMD no HDMI audio on Linux

2021-06-02, 4:52 AM

@ jbaldassari wrote:

Hi, P14s AMD Gen 1 (20Y1) user here on Gentoo.  My audio was working perfectly fine with Linux 5.12.7 and BIOS version 1.30, but as soon as I flashed BIOS 1.32 in an attempt to get suspend working, my audio has become completely broken.  By setting `snd-rn-pci-acp3x.dmic_acpi_check=0` as a kernel parameter or a module load option I can get my speakers working, but this has the effect of disabling my microphone.  I' tried applying @osnix ' patch with a slight modification to include my board name (`20Y1CTO1WW`), but that seems to have the exact same behavior as disabling the dmic acpi check, i.e. it fixes the speakers but not the mic.  Is there any known workaround for getting the mic working?  If not, can someone point me to a link to download BIOS 1.30?  Maybe I can get my audio working again if I downgrade.

 

In case it' helpful, here' the output of ` dmesg | grep snd` with the patch applied:

 

```

[    8.412440] snd_hda_intel 0000:07:00.1: enabling device (0000 -> 0002)
[    8.412585] snd_hda_intel 0000:07:00.6: enabling device (0000 -> 0002)
[    8.414475] snd_rn_pci_acp3x 0000:07:00.5: enabling device (0000 -> 0002)
[    8.414595] snd_rn_pci_acp3x 0000:07:00.5: ACPI settings override using DMI (ACP mic is not present)
[    8.418638] snd_hda_intel 0000:07:00.1: bound 0000:07:00.0 (ops 0xffffffff9e7441e0)
[    8.427427] snd_hda_codec_realtek hdaudioC1D0: autoconfig for ALC257: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[    8.427431] snd_hda_codec_realtek hdaudioC1D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[    8.427433] snd_hda_codec_realtek hdaudioC1D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[    8.427434] snd_hda_codec_realtek hdaudioC1D0:    mono: mono_out=0x0
[    8.427435] snd_hda_codec_realtek hdaudioC1D0:    inputs:
[    8.427435] snd_hda_codec_realtek hdaudioC1D0:      Mic=0x19

```

 

I'm not sure how it worked for you, it never worked here regardless of the BIOS or kernel version.

The DMIC on ACP always got an error here and only the MIC on the HDA codec worked,

eg: what you see on your dmesg right now, ACP MIC OFF, HDA codec MIC ON.

 

Here for my testing partition with all BIOS versions:

 

```

~$ sudo journalctl | grep Mic= | grep -v snd_hda_codec_realtek

< nothing >

 

~$ sudo journalctl | grep Mic= | wc -l
241

 

```

 

So from 241 boots not one was on ACP MIC :)

 

 

To be clear, if you saw that error or a similar one your DMIC never worked, bc it cannot work.

And you are correct, the patch has the same effect as adding the module option.

 

Gabriel

Reply
Options

9 Posts

06-02-2021

United States of America

7 Signins

25 Page Views

  • Posts: 9
  • Registered: ‎06-02-2021
  • Location: United States of America
  • Views: 25
  • Message 46 of 71

Re:T14s AMD no HDMI audio on Linux

2021-06-02, 6:05 AM

@ osnix wrote:

 

 

~$ sudo journalctl | grep Mic= | grep -v snd_hda_codec_realtek

< nothing >

 

I have the same result.

 

To be clear, if you saw that error or a similar one your DMIC never worked, bc it cannot work.

 

That is strange.  I've had a working microphone ever since I installed Linux on this system.   Could it be a different device?  I can't explain why it was working before or why it suddenly stopped after flashing 1.32.

 

I'm back on 1.30 now, but the mic still is not working.  I'll do some more investigating this week and post back here if I make any progress.

Reply
Options

389 Posts

03-06-2021

Germany

220 Signins

2355 Page Views

  • Posts: 389
  • Registered: ‎03-06-2021
  • Location: Germany
  • Views: 2355
  • Message 47 of 71

Re:T14s AMD no HDMI audio on Linux

2021-06-02, 6:24 AM

@ jbaldassari wrote:

@ osnix wrote:

 

 

~$ sudo journalctl | grep Mic= | grep -v snd_hda_codec_realtek

< nothing >

 

I have the same result.

 

To be clear, if you saw that error or a similar one your DMIC never worked, bc it cannot work.

 

That is strange.  I' had a working microphone ever since I installed Linux on this system.   Could it be a different device?  I can' explain why it was working before or why it suddenly stopped after flashing 1.32.

 

I' back on 1.30 now, but the mic still is not working.  I' do some more investigating this week and post back here if I make any progress.

 

Well only the MIC on HDA worked here and like some other users noticed, it has some bugs regarding the sound quality.

 

Now my P14s have a different board name like yours, I don't know if there are any HW differences.

 

```

:/sys/devices/virtual/dmi/id$ cat board_name product_sku
20Y1000MGE
LENOVO_MT_20Y1_BU_Think_FM_ThinkPad P14s Gen 1

 

```

Reply
Options

9 Posts

06-02-2021

United States of America

7 Signins

25 Page Views

  • Posts: 9
  • Registered: ‎06-02-2021
  • Location: United States of America
  • Views: 25
  • Message 48 of 71

Re:T14s AMD no HDMI audio on Linux

2021-06-02, 13:12 PM

@ osnix wrote:

 

Well only the MIC on HDA worked here and like some other users noticed, it has some bugs regarding the sound quality.

 

It's possible this is how it was working for me before, but now I don't seem to have any sound input at all.  Do you know how you were able to get the MIC on HDA working?  I'll take a mic with poor sound quality over no mic at all.

 

Now my P14s have a different board name like yours, I don' know if there are any HW differences.

 

```

:/sys/devices/virtual/dmi/id$ cat board_name product_sku
20Y1000MGE
LENOVO_MT_20Y1_BU_Think_FM_ThinkPad P14s Gen 1

 

```

# cat /sys/devices/virtual/dmi/id/{board_name,product_sku}
20Y1CTO1WW
LENOVO_MT_20Y1_BU_Think_FM_ThinkPad P14s Gen 1

 

 

 

Reply
Options

389 Posts

03-06-2021

Germany

220 Signins

2355 Page Views

  • Posts: 389
  • Registered: ‎03-06-2021
  • Location: Germany
  • Views: 2355
  • Message 49 of 71

Re:T14s AMD no HDMI audio on Linux

2021-06-02, 14:43 PM

@ jbaldassari wrote:

@ osnix wrote:

 

Well only the MIC on HDA worked here and like some other users noticed, it has some bugs regarding the sound quality.

 

It' possible this is how it was working for me before, but now I don' seem to have any sound input at all.  Do you know how you were able to get the MIC on HDA working?  I' take a mic with poor sound quality over no mic at all.

 

Now my P14s have a different board name like yours, I don' know if there are any HW differences.

 

```

:/sys/devices/virtual/dmi/id$ cat board_name product_sku
20Y1000MGE
LENOVO_MT_20Y1_BU_Think_FM_ThinkPad P14s Gen 1

 

```

# cat /sys/devices/virtual/dmi/id/{board_name,product_sku}
20Y1CTO1WW
LENOVO_MT_20Y1_BU_Think_FM_ThinkPad P14s Gen 1

 

 

 

 

You are correct, I just reproduce your issue. HDA MIC didn't work just showed up.

 

@MarkRHPearson , maybe we hold back the patch. It looks like we either get sound or the MIC.

However, with the patch, one could boot with =1 instead of =0 and force the MIC.

There is for sure some BIOS bug too.

Unfortunately, I won't be able to do more testing for the next couple of days.

 

Gabriel

Reply
Options

51 Posts

08-19-2020

Germany

87 Signins

555 Page Views

  • Posts: 51
  • Registered: ‎08-19-2020
  • Location: Germany
  • Views: 555
  • Message 50 of 71

Re:T14s AMD no HDMI audio on Linux

2021-06-02, 15:05 PM

@ osnix wrote:

~$ sudo journalctl | grep Mic= | grep -v snd_hda_codec_realtek

< nothing >

 

Same here, BUT I have it both working: HDMI Audio and Mic.

BTW: Gnome Settings reports a "Digital Microphone" (see screenshot)

 

I've done no custom settings. Just a fully updated Fedora 34 with default kernel (currently 5.12.8) and GRUB.

 

 

cat /sys/devices/virtual/dmi/id/{board_name,product_sku}
20UJS00K00
LENOVO_MT_20UJ_BU_Think_FM_ThinkPad T14s Gen 1

 

Reply
Forum Home

Community Guidelines

Please review our Guidelines before posting.

Learn More

Check out current deals!

Go Shop
X

Save

X

Delete

X

No, I don’t want to share ideas Yes, I agree to these terms