Add bass speaker fix for Lenovo Yoga Pro 7 14IAH10#5597
Conversation
The ALC287 codec on Yoga Pro 7 14IAH10 requires the alc287-yoga9-bass-spk-pin quirk to properly route audio to both amplifier speakers. Without this fix, only one speaker works and bass output is missing. This adds: - Hardware detection script (omarchy-hw-lenovo-yoga-pro7-bass) - Audio fix that creates /etc/modprobe.d/lenovo-yoga-pro7-bass.conf Tested on Lenovo Yoga Pro 7 14IAH10 (Intel Core Ultra 9 285H). Reference: https://wiki.archlinux.org/title/Lenovo_Yoga_9i_2022_(14AiPI7)
There was a problem hiding this comment.
Pull request overview
This PR introduces a hardware-specific audio quirk for the Lenovo Yoga Pro 7 14IAH10 by detecting the model via DMI and writing a modprobe configuration to enable the correct ALC287 pin routing (restoring the missing/bass speaker output).
Changes:
- Add a hardware detection helper (
omarchy-hw-lenovo-yoga-pro7-bass) usingomarchy-hw-match. - Add a Lenovo-specific installer hardware script that writes
/etc/modprobe.d/lenovo-yoga-pro7-bass.confwith the requiredsnd-sof-intel-hda-genericoption.
Tip
If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| install/config/hardware/lenovo/fix-yoga-pro7-bass-speakers.sh | Writes the required modprobe option when the target Yoga Pro 7 model is detected. |
| bin/omarchy-hw-lenovo-yoga-pro7-bass | Adds a DMI-based detection command for the specific Lenovo Yoga Pro 7 14IAH10 model. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Addresses review feedback: the hardware fix script was not invoked during installation. Add it to install/config/all.sh so it runs automatically on matching hardware.
| # Without this quirk, only one speaker works and bass output is missing. | ||
| # Reference: https://wiki.archlinux.org/title/Lenovo_Yoga_9i_2022_(14AiPI7) | ||
|
|
||
| if omarchy-hw-lenovo-yoga-pro7-bass; then |
There was a problem hiding this comment.
Let's just inline the hw-match call here. Since it's only used here.
| run_logged $OMARCHY_INSTALL/config/hardware/apple/fix-suspend-nvme.sh | ||
| run_logged $OMARCHY_INSTALL/config/hardware/apple/fix-t2.sh | ||
|
|
||
| run_logged $OMARCHY_INSTALL/config/hardware/lenovo/fix-yoga-pro7-bass-speakers.sh |
There was a problem hiding this comment.
We should also add a migration so existing machines get the fix.
| # Without this quirk, only one speaker works and bass output is missing. | ||
| # Reference: https://wiki.archlinux.org/title/Lenovo_Yoga_9i_2022_(14AiPI7) | ||
|
|
||
| if omarchy-hw-match "Yoga Pro 7 14IAH10"; then |
Problem
The Lenovo Yoga Pro 7 14IAH10 has dual amplifier speakers (AMP1 + AMP2) that require a specific pin quirk for the ALC287 codec. Without this fix, only one speaker works and bass output is missing.
Solution
This PR adds hardware detection and audio configuration for the Yoga Pro 7 14IAH10:
bin/omarchy-hw-lenovo-yoga-pro7-bassinstall/config/hardware/lenovo/fix-yoga-pro7-bass-speakers.shThe fix creates
/etc/modprobe.d/lenovo-yoga-pro7-bass.confwith:Testing
Tested on Lenovo Yoga Pro 7 14IAH10 with Intel Core Ultra 9 285H. Both speakers now work correctly with proper bass output.
Reference
Based on the same fix used for Lenovo Yoga 9i 2022: https://wiki.archlinux.org/title/Lenovo_Yoga_9i_2022_(14AiPI7)#Audio