Received: by 10.192.165.148 with SMTP id m20csp3131418imm; Mon, 7 May 2018 07:11:34 -0700 (PDT) X-Google-Smtp-Source: AB8JxZp389F8Yz/UTMnD24FVaavEijhDmy2T+x6jFtmSap3XJZWwVzsERol4eJseSREwP2uCVIuo X-Received: by 2002:a63:921a:: with SMTP id o26-v6mr30475915pgd.438.1525702294460; Mon, 07 May 2018 07:11:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525702294; cv=none; d=google.com; s=arc-20160816; b=lOoyLs23uZ4LWlWAzIhAA0rm4vrWovx3R2M1R30kJIIrHyBWq8TPqg5EuXgxr9voyS USuDai/bSvjfi9wgmONGA+TBiWCAc45tRT4RGTGxh4B0EqdVZQEd0U7UYhFT7KXE6II9 v1YHBZlk1e2FHjyUUVypTufyb2L0JAy/xX8U9IXkl/EiJ8lfYEccg2gHYnsdPwtmXKau 44CXxqS6OFQlqyVhVh3wtXlWFcc3PJ6QHPBdepUptqvE9hI7BvRIjXFyEWiK28EAmBu4 RVV2Oqx536GboZrJSqEYgWP4zxJ9mNMMwFP9dUNRNRuIwNjwQsXgwwCgxR97QH/DAv/K 01Xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=+WrOLxzxcwHVe8Bw/OIsDnYgR+mOip1ymb5a+YWxjsY=; b=GnfsAwTwJtd/HyGHHHCXEHbwUk+R2fCvdbh8KRnWm6tG6dE9ODI+TvBOA3Uu/23Vyy TQNXuI2jHX1PzAwJpYwONZ6WfPEi36XvTr3ABJinlfXxSU2ghzNITe7Dc96Sb9YdkAJc hl0h1PVZbBv8cMHm/+WmgywhkHgOKG+6Rq9MfvEUdCx0TE/ZBTzhFz5F3xjxr0F13Z1O qZ672ijEknyg9nf18KahTqQvahi/ZXedlNwxEbbE/MbVeG/u4ydHzSPj/3U1zZRLkGyI SaMamf0mo2oyYFVRw0U1kIJRsJApOBSXvh9KI6NAUtbBuyOE68PLqeKzuYR1WbDNwE7m pFjw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ib00D6qt; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l67si22566818pfg.326.2018.05.07.07.11.20; Mon, 07 May 2018 07:11:34 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ib00D6qt; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752696AbeEGOKV (ORCPT + 99 others); Mon, 7 May 2018 10:10:21 -0400 Received: from mail-qk0-f172.google.com ([209.85.220.172]:41343 "EHLO mail-qk0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752412AbeEGOKU (ORCPT ); Mon, 7 May 2018 10:10:20 -0400 Received: by mail-qk0-f172.google.com with SMTP id d125so21937809qkb.8; Mon, 07 May 2018 07:10:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=+WrOLxzxcwHVe8Bw/OIsDnYgR+mOip1ymb5a+YWxjsY=; b=ib00D6qt0VMYYyL9SzlkF76vhUDCMNF0NDum4K4pigFmcrcGum5pVBpJs7g+hGfes4 KcN78x/NCBaiMppM2Xf0C7pUtnRWr7C1sSOKaapttALQw9JvwVkSBBdKccA08ge+OXH/ eYbmyHF6kSvVcGP7NuBaCz3WqF4dvgtBpOTbiJtxe1MiyWfPgFB1vpDwETCZp/kI410v fVehMDsGLLR5JEo+xYnMXt3HANcG5RtLyOpI82GtpOsrCjA8HhplrPjlSKAyNLPtlE1f 4pCm5+zfU8d4ud8hUODC107+z15TKmjl6lp4mpm/Jlu0KaltXM3fCTej9g9XJARnCWXl F9fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=+WrOLxzxcwHVe8Bw/OIsDnYgR+mOip1ymb5a+YWxjsY=; b=DmyJoJU4EQaVzEJJv57O2dX8/YWNUufNroREbodWMxmAPLbTLcc8LtJ/SGR82L1Zq1 AWh70D3ZTlcBAqag6loESRqBHWVkzHVrtF1vV98yAmJut8zGV5aTIVUQg/qcuEwT/ldj VoH3+oCAMXGp5voRsOQrJ2HA2Xtu+Qw4z3qo0/glpLlQWHHRRbdPc57MSP76hkbfP0Bn TctGcbLCGdxb0N7YVxO+GL6ILaqj7B/oRfGPZxoOafmbSb6x9q9ExZyP/z5t0Sz647qD P7GSSer4c6V8bPzhtyWWy+Q8d9tvwKUUYzUPdqCiqzrlMy6+Wm1dAtRoOljeEpb2H7nZ qOCg== X-Gm-Message-State: ALQs6tDqnEvJZgSuua9n4RzjHuL8Kifffl8JezZfhCby5QQQ2lASMGk/ zVqolhgKFhhaMQ/M/K/CkONUdiGDxXzJxzoBRb8= X-Received: by 10.55.31.6 with SMTP id f6mr30154001qkf.147.1525702219315; Mon, 07 May 2018 07:10:19 -0700 (PDT) MIME-Version: 1.0 Received: by 10.12.152.150 with HTTP; Mon, 7 May 2018 07:10:18 -0700 (PDT) In-Reply-To: <20180503030438.51150-1-chiu@endlessm.com> References: <20180503030438.51150-1-chiu@endlessm.com> From: Andy Shevchenko Date: Mon, 7 May 2018 17:10:18 +0300 Message-ID: Subject: Re: [PATCH v2] platform/x86: asus-wmi: Add keyboard backlight toggle support To: Chris Chiu Cc: Corentin Chary , Darren Hart , Andy Shevchenko , acpi4asus-user , Platform Driver , Linux Kernel Mailing List , Linux Upstreaming Team , Jian-Hong Pan Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, May 3, 2018 at 6:04 AM, Chris Chiu wrote: > Some Asus laptops like UX550GE has hotkey (Fn+F7) for keyboard > backlight toggle. In this UX550GE, the hotkey incremet the level > of brightness for each keypress from 1 to 3, and then switch it > off when the brightness has been the max. This commit interprets > the code 0xc7 generated from hotkey to KEY_KBDILLUMUP to increment > the brightness, then pass KEY_KBDILLUMTOGGLE to user space after > the brightness max been reached for switching the led off. > Pushed to my review and testing queue, thanks! > Signed-off-by: Chris Chiu > Signed-off-by: Jian-Hong Pan > Tested-by: Jian-Hong Pan > --- > > Notes: > v2: > - Remove redundant 'else' branch logic > > drivers/platform/x86/asus-nb-wmi.c | 1 + > drivers/platform/x86/asus-wmi.c | 5 +++++ > 2 files changed, 6 insertions(+) > > diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c > index 136ff2b4cce5..14c502e18579 100644 > --- a/drivers/platform/x86/asus-nb-wmi.c > +++ b/drivers/platform/x86/asus-nb-wmi.c > @@ -496,6 +496,7 @@ static const struct key_entry asus_nb_wmi_keymap[] = { > { KE_KEY, 0xC4, { KEY_KBDILLUMUP } }, > { KE_KEY, 0xC5, { KEY_KBDILLUMDOWN } }, > { KE_IGNORE, 0xC6, }, /* Ambient Light Sensor notification */ > + { KE_KEY, 0xC7, { KEY_KBDILLUMTOGGLE } }, > { KE_END, 0}, > }; > > diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > index 1f6e68f0b646..4a3ba575c9ce 100644 > --- a/drivers/platform/x86/asus-wmi.c > +++ b/drivers/platform/x86/asus-wmi.c > @@ -67,6 +67,7 @@ MODULE_LICENSE("GPL"); > #define NOTIFY_BRNDOWN_MAX 0x2e > #define NOTIFY_KBD_BRTUP 0xc4 > #define NOTIFY_KBD_BRTDWN 0xc5 > +#define NOTIFY_KBD_BRTTOGGLE 0xc7 > > /* WMI Methods */ > #define ASUS_WMI_METHODID_SPEC 0x43455053 /* BIOS SPECification */ > @@ -1745,6 +1746,10 @@ static void asus_wmi_notify(u32 value, void *context) > } > } > > + if (code == NOTIFY_KBD_BRTTOGGLE) > + if (asus->kbd_led_wk < asus->kbd_led.max_brightness) > + code = NOTIFY_KBD_BRTUP; > + > if (is_display_toggle(code) && > asus->driver->quirks->no_display_toggle) > goto exit; > -- > 2.14.1 > -- With Best Regards, Andy Shevchenko