Problem with sound on new Lenovo laptops

Sound issue with newer Lenovo devices using Linux

Missing Bass / No Sound from speakers
Realtek, ALC287, ALC3306

This is actually not a Fedora-only but a whole-Linux problem, but I’m a noob so I hope I can make it to a Fedora problem and somebody more experienced can carry on.

Newer Lenovo laptops and convertibles ship with a realtek ALC3306. This soundcard is detected as an ALC287 by ALSA an causes two types of problems (you can of course google that):

No sound output at all or very weak sound (if device has seperated speakes for bass and treble).

In my case I got a new Lenovo Yoga 7 14IAL7 which has the “normal” speakers next to the keyboard and bass speakers on the bottom. By default the latest stable kernel (and even the newer RC Versions of 5.19) does not recognize the bass speakers at the bottom of the device (can’t see them in alsamixer) so I had a very weak and silent output.

Doing heavy research on this issue I found this Thread (bugzilla.kernel.org) in which several people with new Lenovo devices report the same sound problem I have experienced.

In this thread somebody provided a Kernel patch in which most of the affected devices from this thread were listed.

So I got this patch, replaced the sound device ID of the affected model with bass speaker problem with my own device ID (for my Model its 0x17aa3869) and had to learn how to compile a kernel to apply this patch (worked on second try surprisingly).

Long story short:

Me and some other guys in this thread who are all not that experienced managed it to get our devices working by replacing the codec IDs in the patch with our own and got our sound devices working. But we don’t know how to submit these changes to the mainline Kernel so that everybody can benefit from these experiences just by installing his / her favorite distro.

Is there somebody in here who can carry on with this subject, please?

Of course i can provide more detailed information if needed.

Thx and regards

Pascal

2 Likes

Hi Pascal,

I have the same issue with my new Yoga 7 14IAL7. To my knowledge, it should be possible to just create a DKMS module that targets the specific audio module. That approach should be usable without recompiling the whole kernel. It should also be applicable for multiple kernel versions, as long as the source module is not changed significantly between versions (i.e. as long as the patch file is applicable).

Can you please share the patch file with your modifications? I could then try my hand at creating a DKMS module from it. If it works we can publish on GH/GL or something. I’ve never done this before but I did use the approach successfully with my ROG Flow X13 and a DKMS module for it published on GH (Rog Flow X13 audio DKMS).

Thanks,
Boris

With some Lenovo laptops, I’ve been able to fix sound by creating an /etc/modprobe.d/alsa.conf file that just reads
options-snd-hda-intel index=1

Afterwards, I’ve had to reboot to get the system to read it.

1 Like

Hey guys!

I also have a Lenovo, and this problem happened to me. It looks like the solution already exists.

Overview of Intel hardware platforms — SOF Project 2.4.1 documentation.

1 Like

Hey everybody
Thanks for your support. I managed to get in contact with somebody who added it to the official kernel sources. I hope it will be available soon.

2 Likes

5.19.2 and 6.0.x kernels have the patch, including a YOGA9-quirk. It requires (currently) module parameters like:

$ cat /etc/modprobe.d/snd.conf
options snd_intel_dspcfg dsp_driver=1
options snd_hda_intel model=alc287-yoga9-bass-spk-pin

How can I find out if this will fix sound issues on the Lenovo Yoga S940-14IIL also?

Currently, the sound from the internal speakers is very faint and there is no base.

Will the module parameters be included in future updates?

OS: Fedora 36 Workstation
Kernel: 5.19.6-200.fc36.x86_64

I’ve just got a new Yoga 7 16 (16ARP8).
I have not run the out-the-box update procedure as I don’t want to use Windows, not even once.
I am running Fedora 38 from USB currently just to test things out. I am not impressed with the audio at all, it’s quieter than my smartphone, yet has “Dolby Atmos” sticker on it!
I am a noob to Linux (have dabbled with Ubuntu and Fedora briefly in the past, but definitely don’t understand words like “compile”, if that helps explain my dumb-level. :slight_smile:

The on screen options to increase brightness and volume don’t seem to work, disappointing, but can live with that. Also the webcam seems pretty low resolution, lower than the machine should have given its age and spec anyway, but again, I can live with that.
What I can’t live with is the low volume audio. I am not looking for amazing performance, but I do need the volume to at least be usable in anything other than a completely silent room.

I have been searching online and came across this thread. Is it possible someone could tell me if my issue is resolvable? If so, is there some kind of instruction/tutorial somewhere to explain what I need to do in fairly idiot-proof language? :slight_smile:
Thanks

PS I only have 2 weeks to return this machine if I can’t get it working well enough, so I want to address this asap and rule it in or out regarding the speakers/volume

One approach may be to do a full backup of the windows installation (or create a reinstall usb) then install feodra so it can be updated and fully tested. If all else fails then restore windows before returning it.

I think vendors expect a device to be booted and used before it is returned so it should not matter if it has already been fully booted and configured as long as you do not leave any critical personal details on the machine when it is returned. They will “refurbish” it before resale so that means they will restore the drive to “new” state.

Thanks, yes I wondered about that too but it would still require me to connect to the internet to even get into Windows, and I just hate to do that with Windows. The PE idea negates it too :slight_smile:

Although I don’t know how to do a full backup of Windows, last one I used was XP in any detail, 7 occasionally, never used 10 never mind 11… !

backup would be done from within the live fedora environment and could be done with clonezilla to another usb device. Easy to do. Though I would not worry about it myself.

This is a new system so it only has the OEM image installed on the drive. Installing fedora would wipe that out. If you decide to return it you could easily use fedora and just wipe the partition table and data since the vendor would need to ‘refurbish’ it as a returned device so they would restore the windows image to the drive before resale anyway.

I think you are overthinking the possible return. They do not expect a returned device to be ready to place on display for immediate sale.

Test the device with a full linux install and wipe the drive before returning it if you are not satisfied.

1 Like

Well, there is one more way to sort things out - return your laptop and choose one listed in the https://linux-hardware.org/ as well supported by Linux. Now, this might result in the list of older models, which is totally fine - distros normally have 1-2 Linux kernel version lag and that’ s OK as well, as with 1-2 old models you’d get better support from respective FOSS projects, better optimized settings and configs. That way you might “trade” latest feature to slightly “older” but better supported machine which will last you many years.

Yes, but I really do love this machine so far, and I am admittedly ‘fussy’ when it comes to choosing laptops, keyboard layout being a big deal, but the other features this has are great for me, and of course the superb price I got it for is part of that!

I will perservere until I can no more!

Currently I have no idea why but I can’t extract the EXE bios updater for some reason. If i can resolve that I can hopefully update the BIOS, then as per Alex’s comments above, I will just dive in and put the glorious Fedora over the top of the dastardly Windose. :slight_smile:

I can’t extract the EXE bios updater for some reason.

I just tried double clicked on the “j1cn41ww.exe” and opened this dialog where top left corner button says “Extract”:


I extracted all files to new folder. Maybe you should install 7zip to Fedora so it knows now to handle the EXE archive ?

Thanks, yes I can get that far, but the files don’t contain the right ones to follow this video, which is the only one I have found explaining how to do this! https://youtu.be/N69ZiC98i5w?si=h214FqeROrUzAm5Z&t=149

I am now trying to make a bootable USB of HirensBoot CD, but that won’t work either, fails to flash ISO to thumb drive. hunting for another USB stick, two failed so far! (Doing it on Windows as that’s what instructions state)

Finally it looks like I am successfully writing a USB for Windows PE. Will be nice if that works to update BIOS, if so, I owe Jeff a big wet one. :slight_smile: