From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752962AbdFRMoy (ORCPT ); Sun, 18 Jun 2017 08:44:54 -0400 Received: from mail-qk0-f193.google.com ([209.85.220.193]:35190 "EHLO mail-qk0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752187AbdFRMow (ORCPT ); Sun, 18 Jun 2017 08:44:52 -0400 MIME-Version: 1.0 In-Reply-To: <20170616073539.1185-1-kai.heng.feng@canonical.com> References: <20170616073539.1185-1-kai.heng.feng@canonical.com> From: Andy Shevchenko Date: Sun, 18 Jun 2017 15:44:50 +0300 Message-ID: Subject: Re: [PATCH] platform/x86: dell-laptop: Fix bogus keyboard backlight sysfs interface To: Kai-Heng Feng Cc: =?UTF-8?Q?Pali_Roh=C3=A1r?= , Matthew Garrett , "dvhart@infradead.org" , Platform Driver , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jun 16, 2017 at 10:35 AM, Kai-Heng Feng wrote: > Dell Latitude 3160 does not have keyboard backlight, but there is a > sysfs interface for it, which does nothing at all. > > KBD_LED_OFF_TOKEN is the only token can be found. Since it doesn't have > KBD_LED_ON_TOKEN or KBD_LED_AUTO_*_TOKEN, it should be safe to assume it > does not support keyboard backlight. > > Reports keyboard backlight is supported only when tokens other than > KBD_LED_OFF_TOKEN can be found. Okay, I'm waiting for v2 with Pali's or mine suggestion applied. > > Signed-off-by: Kai-Heng Feng > --- > drivers/platform/x86/dell-laptop.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c > index ec202094bd50..743d7ce8c0c8 100644 > --- a/drivers/platform/x86/dell-laptop.c > +++ b/drivers/platform/x86/dell-laptop.c > @@ -1510,7 +1510,11 @@ static void kbd_init(void) > ret = kbd_init_info(); > kbd_init_tokens(); > > - if (kbd_token_bits != 0 || ret == 0) > + /* > + * If KBD_LED_OFF_TOKEN is the only token, > + * consider there is no keyboard backlight. > + */ > + if ((kbd_token_bits & ~BIT(5)) != 0 || ret == 0) > kbd_led_present = true; > } > > -- > 2.13.1 > -- With Best Regards, Andy Shevchenko