Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux 6.9 pre-rc1 might have broken UCM matching for USB devices #404

Open
pinkflames opened this issue Mar 15, 2024 · 5 comments
Open

Linux 6.9 pre-rc1 might have broken UCM matching for USB devices #404

pinkflames opened this issue Mar 15, 2024 · 5 comments

Comments

@pinkflames
Copy link

pinkflames commented Mar 15, 2024

While testing Torvalds' master branch of Linux which will become 6.9-rc1 eventually, I have stumbled upon PipeWire/WirePlumber apparently no longer applying the UCM profile for my USB connected on-board audio controller. Git bisection leads to the following commit: torvalds/linux@1601cd5 . It's possible that I'm wrong in concluding that the issue is UCM no longer applying/matching but that's my best guess looking at seemingly ACP named devices and the lack of any ucm strings in the output of pw-dump, when the regression is present.

Since this is likely a kernel regression, I'll be reporting that to the kernel bugzilla, too, but I thought alsa-ucm-conf might be interested in this change as well.

@pinkflames pinkflames changed the title Linux 6.9 pre-rc1 might have broken UCM matching Linux 6.9 pre-rc1 might have broken UCM matching for USB devices Mar 15, 2024
@perexg
Copy link
Member

perexg commented Mar 15, 2024

Could you attach output from amixer -c 0 contents (replace 0 with the correct integrated USB sound card)? Also show output from amixer -c 0 info. Thanks.

@pinkflames
Copy link
Author

pinkflames commented Mar 15, 2024

Here's the required information, when things are working correctly (regression is not present).
contents_working.txt
info_working.txt

And here's the same output with a kernel that has the issue:
contents_broken.txt
info_broken.txt

@perexg
Copy link
Member

perexg commented Mar 16, 2024

So this cleanup makes sense and it better identifies the purpose of the mixer element:

old naming:

numid=20,iface=MIXER,name='PCM Playback Switch'
numid=21,iface=MIXER,name='PCM Playback Volume'
numid=24,iface=MIXER,name='PCM Playback Switch',index=1
numid=25,iface=MIXER,name='PCM Playback Volume',index=1
numid=28,iface=MIXER,name='PCM Playback Switch',index=2

new naming:

numid=20,iface=MIXER,name='Speaker Playback Switch'
numid=21,iface=MIXER,name='Speaker Playback Volume'
numid=24,iface=MIXER,name='Headphone Playback Switch'
numid=25,iface=MIXER,name='Headphone Playback Volume'
numid=28,iface=MIXER,name='IEC958 In Playback Switch'

I'll try to extend ALC4080 config to handle new names so we can revert the revert :)

@pinkflames
Copy link
Author

I'll try to keep an affected kernel image around so that I can test the fix as soon as it's ready. I can apply git commits as patches to the alsa-ucm-conf package easily, so just let me know when and what to test.

@tiwai
Copy link
Contributor

tiwai commented Mar 17, 2024

The kernel isn't released yet and I'm going to revert the commit that changed the control names. We need to apply the changes a bit more carefully at the next try.
http://lore.kernel.org/r/[email protected]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants