Device: Chromebook (GOOGLE-Cyan-1.0)
Audio Codec: max98090
OS: Ubuntu 24.04 LTS
Problem Summary
On a clean Ubuntu 24.04 install (with PulseAudio or PipeWire), audio plays on both speakers and headphones simultaneously. Plugging in headphones doesnāt mute speakers, which defeats automatic output switching.
Cause
ALSA UCM2 config is looking for a non-existent jack detection control:
JackControl āHeadphone Jackā # Wrong
But the actual jack detection exposed by the hardware is:
āHeadset Jackā # Correct
How to Fix It
Edit system UCM codec file /usr/share/alsa/ucm2/codecs/max98090/Headphones.conf
Change the line:
JackControl "Headphone Jack"
To:
JackControl "Headset Jack"
Edit this file: /usr/share/alsa/ucm2/codecs/max98090/HeadsetMic.conf
Change the line:
JackControl "Headset Mic Jack"
To:
JackControl "Headset Jack"
Reboot
Result
Plug in headphones ā speakers mute, sound routed to headphones.
Unplug headphones ā sound returns to speakers.
No more manual switching needed.
Works reliably after boot.
Extra Notes
alsactl monitor
confirms state changes on jack plug/unplug (node Headset Jack
).
Next step
Try to override configuration instead of editing them, use /etc/alsa/ucm2 directory.
Report upstream, Iām not sure where exactly I should do that.
Here : GitHub Ā· Where software is built would that do?