From: "Pali Rohár" <pali.rohar@gmail.com>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Darren Hart <dvhart@infradead.org>,
Matthew Garrett <mjg59@srcf.ucam.org>,
Richard Purdie <rpurdie@rpsys.net>,
Jacek Anaszewski <j.anaszewski@samsung.com>,
platform-driver-x86@vger.kernel.org, linux-leds@vger.kernel.org
Subject: Re: [PATCH v2 3/4] platform: x86: dell-*: Call led_notify_brightness_change on kbd brightness change
Date: Mon, 24 Oct 2016 15:51:01 +0200 [thread overview]
Message-ID: <20161024135101.GF12154@pali> (raw)
In-Reply-To: <48df1537-4f76-6c7b-cb50-9c1aeaf41b6c@redhat.com>
On Monday 24 October 2016 15:43:50 Hans de Goede wrote:
> Hi,
>
> On 24-10-16 15:34, Pali Rohár wrote:
> >On Sunday 23 October 2016 21:46:51 Hans de Goede wrote:
> >>diff --git a/drivers/platform/x86/dell-wmi.c b/drivers/platform/x86/dell-wmi.c
> >>index da2fe18..f86e774 100644
> >>--- a/drivers/platform/x86/dell-wmi.c
> >>+++ b/drivers/platform/x86/dell-wmi.c
> >>@@ -319,6 +319,11 @@ static void dell_wmi_process_key(int type, int code)
> >> if (type == 0x0000 && code == 0xe025 && !wmi_requires_smbios_request)
> >> return;
> >>
> >>+ if (type == 0x0011 && (code == 0x01e1 || code == 0x02ea ||
> >>+ code == 0x02eb || code == 0x02ec || code == 0x02f6))
> >>+ dell_smbios_call_notifier(
> >>+ dell_smbios_kbd_backlight_brightness_changed, NULL);
> >>+
> >> sparse_keymap_report_entry(dell_wmi_input_dev, key, 1, true);
> >> }
> >>
> >
> >This part of patch is ugly. Some random numbers are checked and then
> >notifier is called. We already have big table with explanation of those
> >events... It is not possible to extend it with some flag or somehow
> >other that value should be called via notifier?
>
> Nope, sparse_keymaps are a well defined API for, well, keymaps! The problem
> really is this commit:
>
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/platform/x86?id=e075b3c898e4055ec62a1f0ed7f3b8e62814bfb6
>
> Which mixes status-events and key-press events in one sparse-keymap,
> which happens to work because so far all the status events are
> using { KE_IGNORE, 0x...., { KEY_RESERVED } }, but now we want to
> actually do something and that shows that the above commit really
> is a bad idea (at least for the 0x0011 type events, if we (partially)
> revert that, then the ugly if goes away and I can simply insert
> the dell_smbios_call_notifier() above the break in the original
> switch-case handling for 0x0011 type events.
>
> So shall I revert the 0011 part of the mentioned commit?
Does not help us, because keyboard backlight change event is also in
dell_wmi_keymap_type_0000 table.
Another idea: instead of struct key_entry create new structure which
reflect information which comes from dell's WMI:
u16 type (key, event or ignore)
u16 code (wmi code)
union { key, event } (linux keycode or enum notifier event)
--
Pali Rohár
pali.rohar@gmail.com
next prev parent reply other threads:[~2016-10-24 13:51 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-23 19:46 [PATCH v2 1/4] leds: core: Add support for poll()ing the sysfs brightness attr for changes Hans de Goede
2016-10-23 19:46 ` [PATCH v2 2/4] platform: x86: dell-smbios: Add a generic dell-smbios notifier chain Hans de Goede
2016-10-24 13:31 ` Pali Rohár
2016-10-24 13:37 ` Hans de Goede
2016-10-24 13:43 ` Pali Rohár
2016-10-24 13:45 ` Hans de Goede
2016-10-27 10:32 ` Pali Rohár
2016-10-27 12:45 ` Hans de Goede
2016-10-27 12:51 ` Pali Rohár
2016-10-27 12:54 ` Hans de Goede
2016-10-27 12:57 ` Pali Rohár
2016-10-23 19:46 ` [PATCH v2 3/4] platform: x86: dell-*: Call led_notify_brightness_change on kbd brightness change Hans de Goede
2016-10-24 13:34 ` Pali Rohár
2016-10-24 13:43 ` Hans de Goede
2016-10-24 13:51 ` Pali Rohár [this message]
2016-10-24 13:57 ` Hans de Goede
2016-10-24 14:10 ` Pali Rohár
2016-10-23 19:46 ` [PATCH v2 4/4] platform: x86: dell-*: Simplify dell-rbtn integration with dell-laptop [untested] Hans de Goede
2016-10-24 20:43 ` [PATCH v2 1/4] leds: core: Add support for poll()ing the sysfs brightness attr for changes Jacek Anaszewski
2016-10-26 15:18 ` Hans de Goede
2016-10-27 6:58 ` Jacek Anaszewski
2016-10-27 7:33 ` Hans de Goede
2016-10-27 8:03 ` Jacek Anaszewski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161024135101.GF12154@pali \
--to=pali.rohar@gmail.com \
--cc=dvhart@infradead.org \
--cc=hdegoede@redhat.com \
--cc=j.anaszewski@samsung.com \
--cc=linux-leds@vger.kernel.org \
--cc=mjg59@srcf.ucam.org \
--cc=platform-driver-x86@vger.kernel.org \
--cc=rpurdie@rpsys.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.