6

I get no sound via the speakers of my Lenovo Legion 7i laptop, which alsamixer tells me is using a Realtek ALC287.

I have tried various Linux distros and kernel combinations, including Ubuntu 16.04, 18.04, and 20.04, with both the default and mainline kernels (5.7.x & 5.8.x), and Manjaro with 5.6.x, 5.7.x and 5.8.x kernels.

In each case, I made sure to disable Auto-Mute in alsamixer, and turn all volume levels to maximum. In all cases, I get no sounds from the speakers (running speaker-test, playing music, etc.). I am able to get sound via headphones and HDMI (though I believe HDMI is via a different sound card).

Also, I can see that there is some kind of sound activity occurring when I look at pavucontrol (the reddish-orange bar that indicates a sound is playing), but there is no actual sound produced from the speakers.

My alsa-info.sh results (from Manjaro on 5.6.15) are here (ignore this, newer one below):

http://alsa-project.org/db/?f=ba86fe76a9d9cf1cced56600edf82eb206a36a72

I am happy to run the script again (or any other tool) from a different distro/kernel combination, please just let me know what would be helpful.

I have already filed a bug report with that same information, but sadly the only responses have been from other people with the same issue.

What can I do to get my sound working? I am experienced with software development, but not drivers or kernel space. Willing to learn and try anything at this point.

UPDATE

alsa-info.sh using a more recent kernel:

http://alsa-project.org/db/?f=4272343a3590cc08f192f98113dedfc0418afe52

0

1 Answer 1

2

Partial answer:

The info you provided has a section about the codec, and that tells you that this particular codec is not recognized:

Codec: Realtek Generic
...
Vendor Id: 0x10ec0287
Subsystem Id: 0x17aa3813
Revision Id: 0x100002

On my system, the first line says

Codec: Realtek ALC892

The code for the patches that deal with the various codecs is in /sound/pci/hda/patch_realtek.c, at least for the relatively old kernel I use at the moment.

So to get your sound working, you need to debug what's going wrong with the codec, then write a patch, and include it in the code, so everyone else with that hardware can have it working.

The codec information can be dumped with cat /proc/asound/card*/codec\#*. Read up on how an Intel HDA Codec works, and debug it.

I recommend disabling Pulseaudio. hda-verb from the alsa-tools package (at least that's how it is called on Debian) may also help.

You can google datasheets for older codecs to understand how they work.

5
  • 1
    The latest driver already has an entry for 0x10ec0287. But nobody knows how the chip is wired up on that particular machine.
    – CL.
    Sep 26, 2020 at 20:55
  • Which means the OP needs to at least uprgrade to the latest kernel, and try again.
    – dirkt
    Sep 27, 2020 at 3:55
  • Whoops. I copied my bug report verbatim, and forgot that I had already run alsa-info.sh with a more recent kernel. Although not the newest, it does recognize the codec. alsa-project.org/db/?f=4272343a3590cc08f192f98113dedfc0418afe52
    – BLuFeNiX
    Sep 27, 2020 at 15:08
  • So the next step is debugging: I recommend to disable Pulseaudio, use aplay to play a WAV file, look at the codec and see if you can figure out what's wrong.
    – dirkt
    Sep 27, 2020 at 17:22
  • 1
    @BLuFeNiX any progress?
    – Gorgo
    Nov 24, 2020 at 16:23

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .