On Thu, 24 Dec 2015 10:39:48 +0100, Hui Wang wrote:
On 12/24/2015 03:45 PM, Takashi Iwai wrote:
On Thu, 24 Dec 2015 07:44:22 +0100, Takashi Iwai wrote:
On Thu, 24 Dec 2015 04:46:37 +0100, Hui Wang wrote:
From: Kailang kailang@realtek.com
The Lenovo ThinkCenter AIO uses Line2 (NID 0x1b) to implement the micmute hotkey, here we register an input device and use Line2 unsol event to collect the hotkey pressing or releasing.
In the meanwhile, the micmute led is controlled by GPIO2, so we use an existing function alc_fixup_gpio_mic_mute_hook() to control the led.
Cc: stable@vger.kernel.org Signed-off-by: Kailang kailang@realtek.com
Is it mandatory expose this as a key event? I mean, wouldn't it suffice just toggle the mic mute by the driver itself? User-space will get the notification by the mixer status change in anyway.
We implement it to be an input device just because we need to meet the X11 requirement, the X11 layer capture the key event instead of mixer status. After the X11 get the keycode, It will set microphone to mute from userspace, it is easy to do that by the driver itself, but X11 also need to know the status change, since the X11 will show up an micmute OSD according to status change, and needs to save the finial status before reboot or poweroff. If we don't implement the input device, we have to modify the X11 layer.
Does the mute button this machine work in that way, too?
Takashi