Bug 217449
Summary: | Bass speakers not working on Lenovo Yoga Pro 9 14IRP8 | ||
---|---|---|---|
Product: | Drivers | Reporter: | Thomas Gfeller (thomas.gfeller+kernel) |
Component: | Sound(ALSA) | Assignee: | Jaroslav Kysela (perex) |
Status: | NEW --- | ||
Severity: | normal | CC: | aahmyu, bagasdotme, gentuser, maroun.bassam, mraic043, samkline |
Priority: | P3 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | Subsystem: | ||
Regression: | No | Bisected commit-id: | |
Attachments: |
Bass speakers are working
4pa-bypass.sh |
Description
Thomas Gfeller
2023-05-16 19:38:26 UTC
Oh, the codec dump files were too big; I uploaded them here: https://www.swisstransfer.com/d/51e8e552-828d-4aea-bdbd-3bbe62ea8446 ...along with an alsa-info.sh-dump here: http://alsa-project.org/db/?f=45447739750ff897cdc20fd0e98d4f2055beebdf (In reply to Thomas Gfeller from comment #0) > Hi there. > > I face an issue which was reported multiple times already and is pretty sure > hardware-specific: In my new 2023 Lenovo Yoga Pro 9, the bass > (bottom-firing) speakers are not working. > > I already tried the suggested solutions: > > https://discussion.fedoraproject.org/t/problem-with-sound-on-new-lenovo- > laptops/72456 > > https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1926165 > > https://github.com/PJungkamp/yoga9-linux > > But this did not help so far. I then tried to fix it myself with the > following guide: https://asus-linux.org/blog/sound-2021-01-11/ > > But I was not able to activate the bass speakers. But what I can offer is a > full dump of my codec from Windows (including pin configurations and verbs) > as well as a dump from my current Linux setup. The files are attached. > > Maybe you can support me in writing a kernel patch file to get it working > and also implement that into mainline? > > I'm sure a lot of Linux prosumers would appreciate that. I'm also available > for tests of course! What kernel version did you experience this issue? (In reply to Bagas Sanjaya from comment #2) > (In reply to Thomas Gfeller from comment #0) > > Hi there. > > > > I face an issue which was reported multiple times already and is pretty > sure > > hardware-specific: In my new 2023 Lenovo Yoga Pro 9, the bass > > (bottom-firing) speakers are not working. > > > > I already tried the suggested solutions: > > > > https://discussion.fedoraproject.org/t/problem-with-sound-on-new-lenovo- > > laptops/72456 > > > > https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1926165 > > > > https://github.com/PJungkamp/yoga9-linux > > > > But this did not help so far. I then tried to fix it myself with the > > following guide: https://asus-linux.org/blog/sound-2021-01-11/ > > > > But I was not able to activate the bass speakers. But what I can offer is a > > full dump of my codec from Windows (including pin configurations and verbs) > > as well as a dump from my current Linux setup. The files are attached. > > > > Maybe you can support me in writing a kernel patch file to get it working > > and also implement that into mainline? > > > > I'm sure a lot of Linux prosumers would appreciate that. I'm also available > > for tests of course! > > What kernel version did you experience this issue? I'm currently running 6.2.15-300.fc38.x86_64 on Fedora 38. Furthermore, under specifications (https://psref.lenovo.com/Product/Yoga/Yoga_Pro_9_14IRP8) I found, that this notebook uses a Realtek ALC3306 codec with a 4-speaker array (2x tweeters, 2x subwoofers). In my case, only the tweeters work. This trick right here does not work for me: https://wiki.archlinux.org/title/Lenovo_Yoga_9i_2022_(14AiPI7)#Audio (In reply to Thomas Gfeller from comment #3) > (In reply to Bagas Sanjaya from comment #2) > > (In reply to Thomas Gfeller from comment #0) > > > Hi there. > > > > > > I face an issue which was reported multiple times already and is pretty > > sure > > > hardware-specific: In my new 2023 Lenovo Yoga Pro 9, the bass > > > (bottom-firing) speakers are not working. > > > > > > I already tried the suggested solutions: > > > > > > https://discussion.fedoraproject.org/t/problem-with-sound-on-new-lenovo- > > > laptops/72456 > > > > > > https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1926165 > > > > > > https://github.com/PJungkamp/yoga9-linux > > > > > > But this did not help so far. I then tried to fix it myself with the > > > following guide: https://asus-linux.org/blog/sound-2021-01-11/ > > > > > > But I was not able to activate the bass speakers. But what I can offer is > a > > > full dump of my codec from Windows (including pin configurations and > verbs) > > > as well as a dump from my current Linux setup. The files are attached. > > > > > > Maybe you can support me in writing a kernel patch file to get it working > > > and also implement that into mainline? > > > > > > I'm sure a lot of Linux prosumers would appreciate that. I'm also > available > > > for tests of course! > > > > What kernel version did you experience this issue? > > I'm currently running 6.2.15-300.fc38.x86_64 on Fedora 38. > > Furthermore, under specifications > (https://psref.lenovo.com/Product/Yoga/Yoga_Pro_9_14IRP8) I found, that this > notebook uses a Realtek ALC3306 codec with a 4-speaker array (2x tweeters, > 2x subwoofers). In my case, only the tweeters work. > > This trick right here does not work for me: > https://wiki.archlinux.org/title/Lenovo_Yoga_9i_2022_(14AiPI7)#Audio Hello Thomas. I had a look at your alsa file, and I noticed you have a Texas instrument smart amp (tias2781). Try the solution explained here and let me know the outcomes. Hopefully the driver can be merged into the kernel tree soon. I personally have a weird initialisation sound, but then the drivers work well. https://forums.lenovo.com/t5/Ubuntu/Ubuntu-and-legion-pro-7-16IRX8H-audio-issues/m-p/5210709?page=7#6004369 Created attachment 304763 [details] Bass speakers are working I got my amps working. If your device has a TIAS2781 component inside (http://alsa-project.org/db/?f=45447739750ff897cdc20fd0e98d4f2055beebdf <- note line 71), you can try the following: Install i2ctools first and then run ./2pa-byps.sh with the i2c-bus number where your TIAS2781 is connected. E.g: sudo ./2pa-byps.sh 0 In my case this enabled my subwoofers and the sound was working properly. This change will be included in the kernel in the next couple of weeks / months so no workaround will be necessary anymore. (In reply to Thomas Gfeller from comment #5) > Created attachment 304763 [details] > Bass speakers are working > > I got my amps working. If your device has a TIAS2781 component inside > (http://alsa-project.org/db/?f=45447739750ff897cdc20fd0e98d4f2055beebdf <- > note line 71), you can try the following: > > Install i2ctools first and then run ./2pa-byps.sh with the i2c-bus number > where your TIAS2781 is connected. E.g: > > sudo ./2pa-byps.sh 0 > > In my case this enabled my subwoofers and the sound was working properly. > > This change will be included in the kernel in the next couple of weeks / > months so no workaround will be necessary anymore. Thanks for providing this script, Thomas. It enabled the right subwoofer only on my 16IRP8; the left is still disabled. Was this the case for you as well? What needs to be tweaked to get the left subwoofer as well? Also, you mention this change will be included in the kernel; could you provide a link or reference for that? Thanks! Created attachment 304847 [details] 4pa-bypass.sh (In reply to Sam from comment #6) > (In reply to Thomas Gfeller from comment #5) > > Created attachment 304763 [details] > > Bass speakers are working > > > > I got my amps working. If your device has a TIAS2781 component inside > > (http://alsa-project.org/db/?f=45447739750ff897cdc20fd0e98d4f2055beebdf <- > > note line 71), you can try the following: > > > > Install i2ctools first and then run ./2pa-byps.sh with the i2c-bus number > > where your TIAS2781 is connected. E.g: > > > > sudo ./2pa-byps.sh 0 > > > > In my case this enabled my subwoofers and the sound was working properly. > > > > This change will be included in the kernel in the next couple of weeks / > > months so no workaround will be necessary anymore. > > Thanks for providing this script, Thomas. It enabled the right subwoofer > only on my 16IRP8; the left is still disabled. Was this the case for you as > well? What needs to be tweaked to get the left subwoofer as well? > > Also, you mention this change will be included in the kernel; could you > provide a link or reference for that? > > Thanks! You can try this script instead - it should enable the amps on devices with multiple amps. (In reply to Thomas Gfeller from comment #7) > Created attachment 304847 [details] > 4pa-bypass.sh > > You can try this script instead - it should enable the amps on devices with > multiple amps. Thanks! This indeed worked, I just had to change the i2c bus number to 2. Looking forward to seeing this upstreamed. (In reply to Thomas Gfeller from comment #7) > Created attachment 304847 [details] > 4pa-bypass.sh > > (In reply to Sam from comment #6) > > (In reply to Thomas Gfeller from comment #5) > > > Created attachment 304763 [details] > > > Bass speakers are working > > > > > > I got my amps working. If your device has a TIAS2781 component inside > > > (http://alsa-project.org/db/?f=45447739750ff897cdc20fd0e98d4f2055beebdf > <- > > > note line 71), you can try the following: > > > > > > Install i2ctools first and then run ./2pa-byps.sh with the i2c-bus number > > > where your TIAS2781 is connected. E.g: > > > > > > sudo ./2pa-byps.sh 0 > > > > > > In my case this enabled my subwoofers and the sound was working properly. > > > > > > This change will be included in the kernel in the next couple of weeks / > > > months so no workaround will be necessary anymore. > > > > Thanks for providing this script, Thomas. It enabled the right subwoofer > > only on my 16IRP8; the left is still disabled. Was this the case for you as > > well? What needs to be tweaked to get the left subwoofer as well? > > > > Also, you mention this change will be included in the kernel; could you > > provide a link or reference for that? > > > > Thanks! > > You can try this script instead - it should enable the amps on devices with > multiple amps. Hi. Sorry if I'm a little too late to the conversation. But I have a similar problem as the OP and I've run across this thread in search of a solution. I'm running a Yoga Pro 9 16IRP8 and having similar issues with my subwoofer not working under Linux Mint. I tried to follow your suggestion about installing a fix. But whenever i try to run the script the terminal signals Error : Write failed. What am I doing wrong ? I just recently installed Linux and I am a total newbie. (In reply to mraic043@gmail.com from comment #9) > (In reply to Thomas Gfeller from comment #7) > > Created attachment 304847 [details] > > 4pa-bypass.sh > > > > (In reply to Sam from comment #6) > > > (In reply to Thomas Gfeller from comment #5) > > > > Created attachment 304763 [details] > > > > Bass speakers are working > > > > > > > > I got my amps working. If your device has a TIAS2781 component inside > > > > (http://alsa-project.org/db/?f=45447739750ff897cdc20fd0e98d4f2055beebdf > > <- > > > > note line 71), you can try the following: > > > > > > > > Install i2ctools first and then run ./2pa-byps.sh with the i2c-bus > number > > > > where your TIAS2781 is connected. E.g: > > > > > > > > sudo ./2pa-byps.sh 0 > > > > > > > > In my case this enabled my subwoofers and the sound was working > properly. > > > > > > > > This change will be included in the kernel in the next couple of weeks > / > > > > months so no workaround will be necessary anymore. > > > > > > Thanks for providing this script, Thomas. It enabled the right subwoofer > > > only on my 16IRP8; the left is still disabled. Was this the case for you > as > > > well? What needs to be tweaked to get the left subwoofer as well? > > > > > > Also, you mention this change will be included in the kernel; could you > > > provide a link or reference for that? > > > > > > Thanks! > > > > You can try this script instead - it should enable the amps on devices with > > multiple amps. > > Hi. > Sorry if I'm a little too late to the conversation. > But I have a similar problem as the OP and I've run across this thread in > search of a solution. > I'm running a Yoga Pro 9 16IRP8 and having similar issues with > my subwoofer not working under Linux Mint. > I tried to follow your suggestion about installing a fix. > But whenever i try to run the script the terminal signals > Error : Write failed. > What am I doing wrong ? > I just recently installed Linux and I am a total newbie. You're probably running an outdated kernel. Linux Mint is very reluctant to upgrade to recent kernel versions - even the Edge version uses an older one. https://linuxmint-user-guide.readthedocs.io/en/latest/edge.html#latest-edge-iso-image -> Standard Linux Mint uses kernel 5.15 -> Edge Linux Mint uses kernel 6.5 My kernel version (with the fix active) on the stable version of Fedora (39) is 6.7.9. As you are a beginner, it's probably not wise to recommend trying to install a newer kernel on Mint. When you start with Linux on a desktop, try to stick to the distribution's defaults. It makes your life much easier. You could try installing https://fedoraproject.org/spins/cinnamon/ in the current version. This will ship with the fix in place (and many more updated drivers) while offering the same desktop environment as Mint. (In reply to Thomas Gfeller from comment #10) > (In reply to mraic043@gmail.com from comment #9) > > (In reply to Thomas Gfeller from comment #7) > > > Created attachment 304847 [details] > > > 4pa-bypass.sh > > > > > > (In reply to Sam from comment #6) > > > > (In reply to Thomas Gfeller from comment #5) > > > > > Created attachment 304763 [details] > > > > > Bass speakers are working > > > > > > > > > > I got my amps working. If your device has a TIAS2781 component inside > > > > > > (http://alsa-project.org/db/?f=45447739750ff897cdc20fd0e98d4f2055beebdf > > > <- > > > > > note line 71), you can try the following: > > > > > > > > > > Install i2ctools first and then run ./2pa-byps.sh with the i2c-bus > > number > > > > > where your TIAS2781 is connected. E.g: > > > > > > > > > > sudo ./2pa-byps.sh 0 > > > > > > > > > > In my case this enabled my subwoofers and the sound was working > > properly. > > > > > > > > > > This change will be included in the kernel in the next couple of > weeks > > / > > > > > months so no workaround will be necessary anymore. > > > > > > > > Thanks for providing this script, Thomas. It enabled the right > subwoofer > > > > only on my 16IRP8; the left is still disabled. Was this the case for > you > > as > > > > well? What needs to be tweaked to get the left subwoofer as well? > > > > > > > > Also, you mention this change will be included in the kernel; could you > > > > provide a link or reference for that? > > > > > > > > Thanks! > > > > > > You can try this script instead - it should enable the amps on devices > with > > > multiple amps. > > > > Hi. > > Sorry if I'm a little too late to the conversation. > > But I have a similar problem as the OP and I've run across this thread in > > search of a solution. > > I'm running a Yoga Pro 9 16IRP8 and having similar issues with > > my subwoofer not working under Linux Mint. > > I tried to follow your suggestion about installing a fix. > > But whenever i try to run the script the terminal signals > > Error : Write failed. > > What am I doing wrong ? > > I just recently installed Linux and I am a total newbie. > > You're probably running an outdated kernel. Linux Mint is very reluctant to > upgrade to recent kernel versions - even the Edge version uses an older one. > > https://linuxmint-user-guide.readthedocs.io/en/latest/edge.html#latest-edge- > iso-image > > -> Standard Linux Mint uses kernel 5.15 > -> Edge Linux Mint uses kernel 6.5 > > My kernel version (with the fix active) on the stable version of Fedora (39) > is 6.7.9. > > As you are a beginner, it's probably not wise to recommend trying to install > a newer kernel on Mint. > > When you start with Linux on a desktop, try to stick to the distribution's > defaults. It makes your life much easier. > > You could try installing https://fedoraproject.org/spins/cinnamon/ in the > current version. This will ship with the fix in place (and many more updated > drivers) while offering the same desktop environment as Mint. Thank you kind sir for your reply. I did as you suggested. Uninstalled Mint and installed Fedora. I still had the same problem with my subwoofer not being recognized. I also made sure if I have a newer kernel. It says 6.7.10. I then tried to apply the solution from one other post that I found that said to try the next workaround : It involves creating an alsa.conf file in etc/modprobe.d folder with the line options-snd-hda-intel index = 1 After I rebooted the bass sound was working. What is funny is I did the same workaround when I had Mint installed. It worked the first time,but after next reboot I again lost my subwoofer. I then tried another solution that was proposed and that involved installing newer kernel. That also worked for a while, but also unexplainably stopped my subwoofer from being recognized. Anyway sorry for a longer post but I just wanted to share my frustrations. Maybe someone finds this useful. The important thing is that sound is now working normally. Thank you again ! Will there be any fix for this issue? I have just tried the latest kernel 6.11 rc3 and the issue is still there, the speakers work fine for a few minutes after boot. Then they get quite, I feel the issue has to do with some energy saving settings since the speakers work perfectly for some time and as soon as I stop playing anything and go to sound options they will stop working. Hi everyone, Thanks for the suggested solutions. I'm new here. Running `sudo bash ./2pa-byps.sh 0` solves the issue, however, after couple of mins, bass is again lost. What could be the reason for that? |