[alsa-devel] [PATCH v3 0/2] Disable the ThinkPad HW mute/level control when possible
Andy Lutomirski
luto at amacapital.net
Tue Dec 9 23:47:34 CET 2014
On Thu, Dec 4, 2014 at 3:55 AM, Darren Hart <dvhart at infradead.org> wrote:
> On Fri, Oct 17, 2014 at 05:04:28PM -0700, Andy Lutomirski wrote:
>> This series is being resurrected after several years, and it's quite
>> different from before, so I'm restarting the version numbers :)
>>
>> ThinkPad volume and mute controls are a mess. For whatever reason,
>> ThinkPads have mute buttons that send KEY_MUTE *and* control an
>> invisible-to-ALSA mute switch. Some of them have volume controls that
>> interact with this switch as well.
>>
>> This is a perennial source of problems. On most ThinkPads, if you press
>> mute and then unmute using GUI controls, you have no sound, because
>> userspace and ALSA state gets out of sync with the hardware switch.
>> There's a separate "sound card" that exposes the hardware switch, but
>> userspace code generally doesn't understand that.
>>
>> There are already a few _OSI(Linux) overrides to turn all the hardware
>> buttons into regular buttons. Rather than quirking ACPI everywhere,
>> just teach thinkpad-acpi to program the buttons for full software
>> control and to disable hardware controls. That allows us to remove the
>> ACPI quirks and have normal mute controls. This approach should be
>> much simpler than adding even more kludgey ALSA integration for
>> questionable gain.
>>
>> Tested on an X200s (with latching mute by default) and an X220 (with
>> a mute light and toggle mute by default). Everything works as expected.
>>
>> Changes from v2:
>> - Don't try to change the mute mode on IBM ThinkPads.
>> - Further minor cleanups.
>> - Try to restore the mode on module unload.
>>
>> Changes from v1:
>> - Simplified the code a bit.
>> - Improved suspend/hibernate behavior.
>>
>> Andy Lutomirski (2):
>> thinkpad-acpi: Try to use full software mute control
>> acpi: Remove _OSI(Linux) for ThinkPads
>>
>> drivers/acpi/blacklist.c | 54 ----------------
>> drivers/platform/x86/thinkpad_acpi.c | 116 ++++++++++++++++++++++++++++++++---
>> 2 files changed, 106 insertions(+), 64 deletions(-)
>
> Andy, is this the latest version?
Yes.
--Andy
>
> --
> Darren Hart
> Intel Open Source Technology Center
--
Andy Lutomirski
AMA Capital Management, LLC
More information about the Alsa-devel
mailing list