> Anton Lindqvist wrote:
> > I'm trying to fix a minor annoyance on my x240: the speaker mute key
> > LED-state is not respected at boot. Pressing the mute key will mute the
> > speaker while the expected behavior is to unmute. The LED-state will
> > remain out-of-sync until I run `mixerctl -t outputs.master.mute`.
> > 
> > I've managed to determine if the speaker is muted in the acpithinkpad(4)
> > attach function by reading from the embedded controller. However,
> > calling wskbd_set_mixervolume at this stage returns ENODEV. I assume the
> > audio device has not been attached yet. I'm new to kernel development
> > and therefore wonder if this approach makes sense. If true, is it
> > possible to postpone a task to run once a certain device has attached?
> 
> The function you're looking for is startuphook_establish.
> 
> But this requires crazy amounts of testing, since many thinkpads will be
> different. It's well known that the mute button, hardware state, and software
> state can became desynced, but the specifics vary by model. 
> 

Actually, I think Anton might be onto something here.  The desyncronization
may be due to the audio driver + BIOS not recognizing the other's state.

Reply via email to