Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1341613 > unrolled thread

[PATCH v4 0/5] Process Dell Instant Launch hotkey on Vostro V131 and Inspiron M5110

Started byMichał Kępień <kernel@kempniu.pl>
First post2016-02-24 08:20 +0100
Last post2016-03-01 00:10 +0100
Articles 7 on this page of 27 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH v4 0/5] Process Dell Instant Launch hotkey on Vostro V131 and Inspiron M5110 Michał Kępień <kernel@kempniu.pl> - 2016-02-24 08:20 +0100
    [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Michał Kępień <kernel@kempniu.pl> - 2016-02-24 08:20 +0100
      Re: [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 14:00 +0100
        Re: [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Michał Kępień <kernel@kempniu.pl> - 2016-02-29 21:30 +0100
          Re: [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 21:30 +0100
            Re: [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Michał Kępień <kernel@kempniu.pl> - 2016-02-29 21:50 +0100
              Re: [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Darren Hart <dvhart@infradead.org> - 2016-03-01 00:00 +0100
                Re: [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Michał Kępień <kernel@kempniu.pl> - 2016-03-02 12:50 +0100
                  Re: [PATCH v4 1/5] dell-laptop: move dell_smi_error() to dell-smbios Pali Rohár <pali.rohar@gmail.com> - 2016-03-03 12:40 +0100
    [PATCH v4 5/5] dell-wmi: support Dell Inspiron M5110 Michał Kępień <kernel@kempniu.pl> - 2016-02-24 08:20 +0100
      Re: [PATCH v4 5/5] dell-wmi: support Dell Inspiron M5110 Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 14:10 +0100
    [PATCH v4 3/5] dell-wmi: enable receiving WMI events on Dell Vostro V131 Michał Kępień <kernel@kempniu.pl> - 2016-02-24 08:20 +0100
      Re: [PATCH v4 3/5] dell-wmi: enable receiving WMI events on Dell  Vostro V131 Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 14:00 +0100
    [PATCH v4 2/5] dell-smbios: rename dell_smi_error() to dell_smbios_error() Michał Kępień <kernel@kempniu.pl> - 2016-02-24 08:30 +0100
      Re: [PATCH v4 2/5] dell-smbios: rename dell_smi_error() to  dell_smbios_error() Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 14:00 +0100
    [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey Michał Kępień <kernel@kempniu.pl> - 2016-02-24 08:30 +0100
      Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 14:10 +0100
        Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Michał Kępień <kernel@kempniu.pl> - 2016-02-29 21:40 +0100
          Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 21:40 +0100
            Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Michał Kępień <kernel@kempniu.pl> - 2016-02-29 21:50 +0100
              Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey Pali Rohár <pali.rohar@gmail.com> - 2016-02-29 22:00 +0100
                Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Darren Hart <dvhart@infradead.org> - 2016-03-01 00:10 +0100
                  Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Michał Kępień <kernel@kempniu.pl> - 2016-03-02 13:40 +0100
                    Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Darren Hart <dvhart@infradead.org> - 2016-03-03 18:20 +0100
                      Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Michał Kępień <kernel@kempniu.pl> - 2016-03-03 19:50 +0100
                        Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Darren Hart <dvhart@infradead.org> - 2016-03-03 21:50 +0100
          Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch  hotkey Darren Hart <dvhart@infradead.org> - 2016-03-01 00:10 +0100

Page 2 of 2 — ← Prev page 1 [2]


#1346164 — Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey

FromPali Rohár <pali.rohar@gmail.com>
Date2016-02-29 22:00 +0100
SubjectRe: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey
Message-ID<r7D59-7Z4-23@gated-at.bofh.it>
In reply to#1346151

[Multipart message — attachments visible in raw view] — view raw

On Monday 29 February 2016 21:49:27 you wrote:
> > On Monday 29 February 2016 21:31:23 Michał Kępień wrote:
> > > > > diff --git a/drivers/platform/x86/dell-wmi.c
> > > > > b/drivers/platform/x86/dell-wmi.c index 65edd93..ffc957b5
> > > > > 100644 --- a/drivers/platform/x86/dell-wmi.c
> > > > > +++ b/drivers/platform/x86/dell-wmi.c
> > > > > @@ -111,7 +111,7 @@ static const struct key_entry
> > > > > dell_wmi_legacy_keymap[] __initconst = {
> > > > > 
> > > > >  	{ KE_IGNORE, 0xe020, { KEY_MUTE } },
> > > > >  	
> > > > >  	/* Shortcut and audio panel keys */
> > > > > 
> > > > > -	{ KE_IGNORE, 0xe025, { KEY_RESERVED } },
> > > > > +	{ KE_KEY, 0xe025, { KEY_PROG4 } },
> > > > > 
> > > > >  	{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
> > > > >  	
> > > > >  	{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
> > > > > 
> > > > > @@ -235,6 +235,9 @@ static void dell_wmi_process_key(int
> > > > > reported_key)
> > > > > 
> > > > >  	    acpi_video_handles_brightness_key_presses())
> > > > >  		
> > > > >  		return;
> > > > > 
> > > > > +	if (key->keycode == KEY_PROG4 &&
> > > > > !wmi_requires_smbios_request) +		return;
> > > > > +
> > > > 
> > > > Here I would rather test against reported_key, not keycode. If
> > > > somebody in future adds KEY_PROG4 for something else we will
> > > > have problem...
> > > 
> > > As 0xe025 is currently the only event we know about that should
> > > be ignored on some machines and processed on others, this makes
> > > sense,
> > > 
> > > at least for now.  If I change the first condition to:
> > >     reported_key == 0xe025
> > 
> > There will be need also change for 5/5 patch...
> 
> Why?  Are you aware of any model which sends a 0xe029 WMI event _and_
> generates an i8042 interrupt?  If not, WMI event 0xe029 should always
> be turned into a key event, as per the keymap.

No, but your current patch 4/5 and 5/5 do that (because it checks 
KEY_PROG4). But if it is not needed, I'm happy because of one hook less.

-- 
Pali Rohár
pali.rohar@gmail.com

[toc] | [prev] | [next] | [standalone]


#1346236 — Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey

FromDarren Hart <dvhart@infradead.org>
Date2016-03-01 00:10 +0100
SubjectRe: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey
Message-ID<r7F6V-115-13@gated-at.bofh.it>
In reply to#1346164
On Mon, Feb 29, 2016 at 09:56:03PM +0100, Pali Rohár wrote:
> On Monday 29 February 2016 21:49:27 you wrote:
> > > On Monday 29 February 2016 21:31:23 Michał Kępień wrote:
> > > > > > diff --git a/drivers/platform/x86/dell-wmi.c
> > > > > > b/drivers/platform/x86/dell-wmi.c index 65edd93..ffc957b5
> > > > > > 100644 --- a/drivers/platform/x86/dell-wmi.c
> > > > > > +++ b/drivers/platform/x86/dell-wmi.c
> > > > > > @@ -111,7 +111,7 @@ static const struct key_entry
> > > > > > dell_wmi_legacy_keymap[] __initconst = {
> > > > > > 
> > > > > >  	{ KE_IGNORE, 0xe020, { KEY_MUTE } },
> > > > > >  	
> > > > > >  	/* Shortcut and audio panel keys */
> > > > > > 
> > > > > > -	{ KE_IGNORE, 0xe025, { KEY_RESERVED } },
> > > > > > +	{ KE_KEY, 0xe025, { KEY_PROG4 } },
> > > > > > 
> > > > > >  	{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
> > > > > >  	
> > > > > >  	{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
> > > > > > 
> > > > > > @@ -235,6 +235,9 @@ static void dell_wmi_process_key(int
> > > > > > reported_key)
> > > > > > 
> > > > > >  	    acpi_video_handles_brightness_key_presses())
> > > > > >  		
> > > > > >  		return;
> > > > > > 
> > > > > > +	if (key->keycode == KEY_PROG4 &&
> > > > > > !wmi_requires_smbios_request) +		return;
> > > > > > +
> > > > > 
> > > > > Here I would rather test against reported_key, not keycode. If
> > > > > somebody in future adds KEY_PROG4 for something else we will
> > > > > have problem...
> > > > 
> > > > As 0xe025 is currently the only event we know about that should
> > > > be ignored on some machines and processed on others, this makes
> > > > sense,
> > > > 
> > > > at least for now.  If I change the first condition to:
> > > >     reported_key == 0xe025
> > > 
> > > There will be need also change for 5/5 patch...
> > 
> > Why?  Are you aware of any model which sends a 0xe029 WMI event _and_
> > generates an i8042 interrupt?  If not, WMI event 0xe029 should always
> > be turned into a key event, as per the keymap.
> 
> No, but your current patch 4/5 and 5/5 do that (because it checks 
> KEY_PROG4). But if it is not needed, I'm happy because of one hook less.

From my reading, patch 5/5 adds 0xe029 to the reported keys that need to be
ignored, so the test would need to include both if it isn't using the common
keycode KEY_PROG4. I believe that is what Pali is saying as well. Is this not
the correct reading of 5/5?

> 
> -- 
> Pali Rohár
> pali.rohar@gmail.com



-- 
Darren Hart
Intel Open Source Technology Center

[toc] | [prev] | [next] | [standalone]


#1348009 — Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey

FromMichał Kępień <kernel@kempniu.pl>
Date2016-03-02 13:40 +0100
SubjectRe: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey
Message-ID<r8eem-7A8-35@gated-at.bofh.it>
In reply to#1346236
> On Mon, Feb 29, 2016 at 09:56:03PM +0100, Pali Rohár wrote:
> > On Monday 29 February 2016 21:49:27 you wrote:
> > > > On Monday 29 February 2016 21:31:23 Michał Kępień wrote:
> > > > > > > diff --git a/drivers/platform/x86/dell-wmi.c
> > > > > > > b/drivers/platform/x86/dell-wmi.c index 65edd93..ffc957b5
> > > > > > > 100644 --- a/drivers/platform/x86/dell-wmi.c
> > > > > > > +++ b/drivers/platform/x86/dell-wmi.c
> > > > > > > @@ -111,7 +111,7 @@ static const struct key_entry
> > > > > > > dell_wmi_legacy_keymap[] __initconst = {
> > > > > > > 
> > > > > > >  	{ KE_IGNORE, 0xe020, { KEY_MUTE } },
> > > > > > >  	
> > > > > > >  	/* Shortcut and audio panel keys */
> > > > > > > 
> > > > > > > -	{ KE_IGNORE, 0xe025, { KEY_RESERVED } },
> > > > > > > +	{ KE_KEY, 0xe025, { KEY_PROG4 } },
> > > > > > > 
> > > > > > >  	{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
> > > > > > >  	
> > > > > > >  	{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
> > > > > > > 
> > > > > > > @@ -235,6 +235,9 @@ static void dell_wmi_process_key(int
> > > > > > > reported_key)
> > > > > > > 
> > > > > > >  	    acpi_video_handles_brightness_key_presses())
> > > > > > >  		
> > > > > > >  		return;
> > > > > > > 
> > > > > > > +	if (key->keycode == KEY_PROG4 &&
> > > > > > > !wmi_requires_smbios_request) +		return;
> > > > > > > +
> > > > > > 
> > > > > > Here I would rather test against reported_key, not keycode. If
> > > > > > somebody in future adds KEY_PROG4 for something else we will
> > > > > > have problem...
> > > > > 
> > > > > As 0xe025 is currently the only event we know about that should
> > > > > be ignored on some machines and processed on others, this makes
> > > > > sense,
> > > > > 
> > > > > at least for now.  If I change the first condition to:
> > > > >     reported_key == 0xe025
> > > > 
> > > > There will be need also change for 5/5 patch...
> > > 
> > > Why?  Are you aware of any model which sends a 0xe029 WMI event _and_
> > > generates an i8042 interrupt?  If not, WMI event 0xe029 should always
> > > be turned into a key event, as per the keymap.
> > 
> > No, but your current patch 4/5 and 5/5 do that (because it checks 
> > KEY_PROG4). But if it is not needed, I'm happy because of one hook less.
> 
> From my reading, patch 5/5 adds 0xe029 to the reported keys that need to be
> ignored, so the test would need to include both if it isn't using the common
> keycode KEY_PROG4. I believe that is what Pali is saying as well. Is this not
> the correct reading of 5/5?

It's the other way round :)  Perhaps explaining the issue once again
will help.

Until this patch series, dell-wmi was only "aware" of laptops which
generate _both_ an i8042 interrupt and a WMI event when Dell Instant
Launch is pressed.  Thus, as the i8042 interrupt already caused a key
event to be generated, there was no point in generating another one for
the WMI event, hence the KE_IGNORE entry for 0xe025 in the keymap.

Enter Vostro V131, which does _not_ generate an i8042 interrupt when
Dell Instant Launch is pressed, yet still generates a WMI event.  In
other words, there was no way of generating a key event for Dell Instant
Launch on that model without changing the relevant keymap entry into a
KE_KEY one.  However, I still needed to ensure that for most machines
that WMI event would _not_ be turned into a key event.  That's why patch
4/5 changes the keymap entry to a KE_KEY one, while also adding a
conditional return to the key processing function, thus making sure that
the previous behavior (ignoring WMI event 0xe025) is preserved on most
machines.

I used KEY_PROG4 in the conditional expression because a mapped keycode
is also used in a comparison just above the code inserted by patch 4/5.
For event 0xe029, however, the conditional expression added by patch 4/5
should always evaluate to false.  Note that if we use KEY_PROG4 in the
comparison, the second condition will be false; if we use 0xe025 in the
comparison, the first condition will be false.  The latter variant
(suggested by Pali) will work fine until we hear of a model which
generates _both_ WMI event 0xe029 and an i8042 interrupt upon pressing
some hotkey.

I was hoping the commit message for patch 4/5 would be clear enough to
convey my intent, yet it seems I managed to confuse you.  Maybe that's a
sign that the commit message and/or code should be rephrased, but I
can't be a judge on this one myself.  Let me know what you think.  Pali,
if you think this is good enough as it is, please add your Reviewed-by.
If you have doubts, I'm all ears.

-- 
Best regards,
Michał Kępień

[toc] | [prev] | [next] | [standalone]


#1349415 — Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey

FromDarren Hart <dvhart@infradead.org>
Date2016-03-03 18:20 +0100
SubjectRe: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey
Message-ID<r8F4S-1WU-7@gated-at.bofh.it>
In reply to#1348009
On Wed, Mar 02, 2016 at 01:35:04PM +0100, Michał Kępień wrote:
> > On Mon, Feb 29, 2016 at 09:56:03PM +0100, Pali Rohár wrote:
> > > On Monday 29 February 2016 21:49:27 you wrote:
> > > > > On Monday 29 February 2016 21:31:23 Michał Kępień wrote:

I understand this better now, thank you for the additional explanation.

> > > > > > > > diff --git a/drivers/platform/x86/dell-wmi.c
> > > > > > > > b/drivers/platform/x86/dell-wmi.c index 65edd93..ffc957b5
> > > > > > > > 100644 --- a/drivers/platform/x86/dell-wmi.c
> > > > > > > > +++ b/drivers/platform/x86/dell-wmi.c
> > > > > > > > @@ -111,7 +111,7 @@ static const struct key_entry
> > > > > > > > dell_wmi_legacy_keymap[] __initconst = {
> > > > > > > > 
> > > > > > > >  	{ KE_IGNORE, 0xe020, { KEY_MUTE } },
> > > > > > > >  	
> > > > > > > >  	/* Shortcut and audio panel keys */
> > > > > > > > 
> > > > > > > > -	{ KE_IGNORE, 0xe025, { KEY_RESERVED } },
> > > > > > > > +	{ KE_KEY, 0xe025, { KEY_PROG4 } },
> > > > > > > > 

Your description below helped explain why the KE_KEY change was necessary, the
commit message didn't do that for me. Just explicitly stating "when there is no
i8042 interrupt, the WMI even must generate a valid KE_KEY" or something along
those lines would help.

> > > > > > > >  	{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
> > > > > > > >  	
> > > > > > > >  	{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
> > > > > > > > 
> > > > > > > > @@ -235,6 +235,9 @@ static void dell_wmi_process_key(int
> > > > > > > > reported_key)
> > > > > > > > 
> > > > > > > >  	    acpi_video_handles_brightness_key_presses())
> > > > > > > >  		
> > > > > > > >  		return;
> > > > > > > > 
> > > > > > > > +	if (key->keycode == KEY_PROG4 &&
> > > > > > > > !wmi_requires_smbios_request) +		return;
> > > > > > > > +
> > > > > > > 
> > > > > > > Here I would rather test against reported_key, not keycode. If
> > > > > > > somebody in future adds KEY_PROG4 for something else we will
> > > > > > > have problem...

And ultimately, that is under our control. So let's just not do that :-)

A comment by the definition of KEY_PROG4 that notes it's meaning in this driver
should prevent any future attempts at overloading it and breaking this.

> > > > > > 
> > > > > > As 0xe025 is currently the only event we know about that should
> > > > > > be ignored on some machines and processed on others, this makes
> > > > > > sense,
> > > > > > 
> > > > > > at least for now.  If I change the first condition to:
> > > > > >     reported_key == 0xe025
> > > > > 
> > > > > There will be need also change for 5/5 patch...
> > > > 
> > > > Why?  Are you aware of any model which sends a 0xe029 WMI event _and_
> > > > generates an i8042 interrupt?  If not, WMI event 0xe029 should always
> > > > be turned into a key event, as per the keymap.
> > > 
> > > No, but your current patch 4/5 and 5/5 do that (because it checks 
> > > KEY_PROG4). But if it is not needed, I'm happy because of one hook less.
> > 
> > From my reading, patch 5/5 adds 0xe029 to the reported keys that need to be
> > ignored, so the test would need to include both if it isn't using the common
> > keycode KEY_PROG4. I believe that is what Pali is saying as well. Is this not
> > the correct reading of 5/5?
> 
> It's the other way round :)  Perhaps explaining the issue once again
> will help.

Got it! Thanks! A couple of comments and I think this is a reasonable solution.


> 
> Until this patch series, dell-wmi was only "aware" of laptops which
> generate _both_ an i8042 interrupt and a WMI event when Dell Instant
> Launch is pressed.  Thus, as the i8042 interrupt already caused a key
> event to be generated, there was no point in generating another one for
> the WMI event, hence the KE_IGNORE entry for 0xe025 in the keymap.
> 
> Enter Vostro V131, which does _not_ generate an i8042 interrupt when
> Dell Instant Launch is pressed, yet still generates a WMI event.  In
> other words, there was no way of generating a key event for Dell Instant
> Launch on that model without changing the relevant keymap entry into a
> KE_KEY one.  However, I still needed to ensure that for most machines
> that WMI event would _not_ be turned into a key event.  That's why patch
> 4/5 changes the keymap entry to a KE_KEY one, while also adding a
> conditional return to the key processing function, thus making sure that
> the previous behavior (ignoring WMI event 0xe025) is preserved on most
> machines.
> 
> I used KEY_PROG4 in the conditional expression because a mapped keycode
> is also used in a comparison just above the code inserted by patch 4/5.
> For event 0xe029, however, the conditional expression added by patch 4/5
> should always evaluate to false.  Note that if we use KEY_PROG4 in the
> comparison, the second condition will be false; if we use 0xe025 in the
> comparison, the first condition will be false.  The latter variant
> (suggested by Pali) will work fine until we hear of a model which
> generates _both_ WMI event 0xe029 and an i8042 interrupt upon pressing
> some hotkey.
> 
> I was hoping the commit message for patch 4/5 would be clear enough to
> convey my intent, yet it seems I managed to confuse you.  Maybe that's a
> sign that the commit message and/or code should be rephrased, but I
> can't be a judge on this one myself.  Let me know what you think.  Pali,
> if you think this is good enough as it is, please add your Reviewed-by.
> If you have doubts, I'm all ears.
> 
> -- 
> Best regards,
> Michał Kępień
> 

-- 
Darren Hart
Intel Open Source Technology Center

[toc] | [prev] | [next] | [standalone]


#1349480 — Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey

FromMichał Kępień <kernel@kempniu.pl>
Date2016-03-03 19:50 +0100
SubjectRe: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey
Message-ID<r8GtY-2LE-5@gated-at.bofh.it>
In reply to#1349415
> Your description below helped explain why the KE_KEY change was necessary, the
> commit message didn't do that for me. Just explicitly stating "when there is no
> i8042 interrupt, the WMI even must generate a valid KE_KEY" or something along
> those lines would help.

I will do that in v5, then.

> > > > > > > > >  	{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
> > > > > > > > >  	
> > > > > > > > >  	{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
> > > > > > > > > 
> > > > > > > > > @@ -235,6 +235,9 @@ static void dell_wmi_process_key(int
> > > > > > > > > reported_key)
> > > > > > > > > 
> > > > > > > > >  	    acpi_video_handles_brightness_key_presses())
> > > > > > > > >  		
> > > > > > > > >  		return;
> > > > > > > > > 
> > > > > > > > > +	if (key->keycode == KEY_PROG4 &&
> > > > > > > > > !wmi_requires_smbios_request) +		return;
> > > > > > > > > +
> > > > > > > > 
> > > > > > > > Here I would rather test against reported_key, not keycode. If
> > > > > > > > somebody in future adds KEY_PROG4 for something else we will
> > > > > > > > have problem...
> 
> And ultimately, that is under our control. So let's just not do that :-)
> 
> A comment by the definition of KEY_PROG4 that notes it's meaning in this driver
> should prevent any future attempts at overloading it and breaking this.

As I'll be sending a v5 anyway, do you think Pali's idea is bad?
Personally, I'm leaning towards it.  IMHO comparing against reported_key
would emphasize the fact that only event 0xe025 is "special" and chances
are that there are no other WMI event codes which need to be handled
this way.

-- 
Best regards,
Michał Kępień

[toc] | [prev] | [next] | [standalone]


#1349564 — Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey

FromDarren Hart <dvhart@infradead.org>
Date2016-03-03 21:50 +0100
SubjectRe: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey
Message-ID<r8Im6-440-19@gated-at.bofh.it>
In reply to#1349480
On Thu, Mar 03, 2016 at 07:46:32PM +0100, Michał Kępień wrote:
> > Your description below helped explain why the KE_KEY change was necessary, the
> > commit message didn't do that for me. Just explicitly stating "when there is no
> > i8042 interrupt, the WMI even must generate a valid KE_KEY" or something along
> > those lines would help.
> 
> I will do that in v5, then.
> 
> > > > > > > > > >  	{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
> > > > > > > > > >  	
> > > > > > > > > >  	{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
> > > > > > > > > > 
> > > > > > > > > > @@ -235,6 +235,9 @@ static void dell_wmi_process_key(int
> > > > > > > > > > reported_key)
> > > > > > > > > > 
> > > > > > > > > >  	    acpi_video_handles_brightness_key_presses())
> > > > > > > > > >  		
> > > > > > > > > >  		return;
> > > > > > > > > > 
> > > > > > > > > > +	if (key->keycode == KEY_PROG4 &&
> > > > > > > > > > !wmi_requires_smbios_request) +		return;
> > > > > > > > > > +
> > > > > > > > > 
> > > > > > > > > Here I would rather test against reported_key, not keycode. If
> > > > > > > > > somebody in future adds KEY_PROG4 for something else we will
> > > > > > > > > have problem...
> > 
> > And ultimately, that is under our control. So let's just not do that :-)
> > 
> > A comment by the definition of KEY_PROG4 that notes it's meaning in this driver
> > should prevent any future attempts at overloading it and breaking this.
> 
> As I'll be sending a v5 anyway, do you think Pali's idea is bad?
> Personally, I'm leaning towards it.  IMHO comparing against reported_key
> would emphasize the fact that only event 0xe025 is "special" and chances
> are that there are no other WMI event codes which need to be handled
> this way.

I took another look at the discussion on 5/5 regarding event 0xe029, and after
that, no, no objection from me. Go ahead with Pali's recommendation to test
against reported_key.

-- 
Darren Hart
Intel Open Source Technology Center

[toc] | [prev] | [next] | [standalone]


#1346233 — Re: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey

FromDarren Hart <dvhart@infradead.org>
Date2016-03-01 00:10 +0100
SubjectRe: [PATCH v4 4/5] dell-wmi: properly process Dell Instant Launch hotkey
Message-ID<r7F6V-115-7@gated-at.bofh.it>
In reply to#1346146
On Mon, Feb 29, 2016 at 09:31:23PM +0100, Michał Kępień wrote:
> > > diff --git a/drivers/platform/x86/dell-wmi.c b/drivers/platform/x86/dell-wmi.c
> > > index 65edd93..ffc957b5 100644
> > > --- a/drivers/platform/x86/dell-wmi.c
> > > +++ b/drivers/platform/x86/dell-wmi.c
> > > @@ -111,7 +111,7 @@ static const struct key_entry dell_wmi_legacy_keymap[] __initconst = {
> > >  	{ KE_IGNORE, 0xe020, { KEY_MUTE } },
> > >  
> > >  	/* Shortcut and audio panel keys */
> > > -	{ KE_IGNORE, 0xe025, { KEY_RESERVED } },
> > > +	{ KE_KEY, 0xe025, { KEY_PROG4 } },
> > >  	{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
> > >  
> > >  	{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
> > > @@ -235,6 +235,9 @@ static void dell_wmi_process_key(int reported_key)
> > >  	    acpi_video_handles_brightness_key_presses())
> > >  		return;
> > >  
> > > +	if (key->keycode == KEY_PROG4 && !wmi_requires_smbios_request)
> > > +		return;
> > > +
> > 
> > Here I would rather test against reported_key, not keycode. If somebody
> > in future adds KEY_PROG4 for something else we will have problem...
> 
> As 0xe025 is currently the only event we know about that should be
> ignored on some machines and processed on others, this makes sense, at
> least for now.  If I change the first condition to:
> 
>     reported_key == 0xe025
> 
> will you be okay with adding your Reviewed-by for this patch?  Then, for
> Darren's convenience, I could post a v5 of the whole series with the
> above change and all your Acked-by and Reviewed-by tags added.

Yes, please do. That way I'm sure I have the right bits.

-- 
Darren Hart
Intel Open Source Technology Center

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | linux.kernel


csiph-web