All of lore.kernel.org
 help / color / mirror / Atom feed
From: <Mario.Limonciello@dell.com>
To: <jettrink@chromium.org>, <mathewk@chromium.org>
Cc: <linux-kernel@vger.kernel.org>, <acelan.kao@canonical.com>,
	<andy@infradead.org>, <dvhart@infradead.org>,
	<platform-driver-x86@vger.kernel.org>
Subject: RE: [PATCH v2] platform/x86: intel-vbtn: Report switch events when event wakes device
Date: Tue, 21 May 2019 13:42:00 +0000	[thread overview]
Message-ID: <a7a23cbea93d46b48f7c9bd4e4cd4314@AUSX13MPC105.AMER.DELL.COM> (raw)
In-Reply-To: <CAK+PMK47_OE-BgOYD_TD0kwxD4RG+nS9Wstg4ydUy7yV9nVmHQ@mail.gmail.com>

> -----Original Message-----
> From: Jett Rink <jettrink@chromium.org>
> Sent: Tuesday, May 21, 2019 8:37 AM
> To: Mathew King
> Cc: linux-kernel; AceLan Kao; Andy Shevchenko; Darren Hart; platform-driver-
> x86@vger.kernel.org; Limonciello, Mario
> Subject: Re: [PATCH v2] platform/x86: intel-vbtn: Report switch events when event
> wakes device
> 
> 
> [EXTERNAL EMAIL]
> 
> On Mon, May 20, 2019 at 4:41 PM Mathew King <mathewk@chromium.org>
> wrote:
> >
> > When a switch event, such as tablet mode/laptop mode or docked/undocked,
> > wakes a device make sure that the value of the swich is reported.
> > Without when a device is put in tablet mode from laptop mode when it is
> > suspended or vice versa the device will wake up but mode will be
> > incorrect.
> >
> > Tested by suspending a device in laptop mode and putting it in tablet
> > mode, the device resumes and is in tablet mode. When suspending the
> > device in tablet mode and putting it in laptop mode the device resumes
> > and is in laptop mode.
> >
> > Signed-off-by: Mathew King <mathewk@chromium.org>
> >
> > ---
> > Changes in v2:
> >   - Added comment explaining why switch events are reported
> >   - Format so that checkpatch is happy
> > ---
> >  drivers/platform/x86/intel-vbtn.c | 16 ++++++++++++++--
> >  1 file changed, 14 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/platform/x86/intel-vbtn.c b/drivers/platform/x86/intel-vbtn.c
> > index 06cd7e818ed5..a0d0cecff55f 100644
> > --- a/drivers/platform/x86/intel-vbtn.c
> > +++ b/drivers/platform/x86/intel-vbtn.c
> > @@ -76,12 +76,24 @@ static void notify_handler(acpi_handle handle, u32
> event, void *context)
> >         struct platform_device *device = context;
> >         struct intel_vbtn_priv *priv = dev_get_drvdata(&device->dev);
> >         unsigned int val = !(event & 1); /* Even=press, Odd=release */
> > -       const struct key_entry *ke_rel;
> > +       const struct key_entry *ke, *ke_rel;
> >         bool autorelease;
> >
> >         if (priv->wakeup_mode) {
> > -               if (sparse_keymap_entry_from_scancode(priv->input_dev, event)) {
> > +               ke = sparse_keymap_entry_from_scancode(priv->input_dev, event);
> > +               if (ke) {
> >                         pm_wakeup_hard_event(&device->dev);
> > +
> > +                       /*
> > +                        * Switch events like tablet mode will wake the device
> > +                        * and report the new switch position to the input
> > +                        * subsystem.
> > +                        */
> Thanks for adding the comment; This looks good to me.
> 
> > +                       if (ke->type == KE_SW)
> > +                               sparse_keymap_report_event(priv->input_dev,
> > +                                                          event,
> > +                                                          val,
> > +                                                          0);
> >                         return;
> >                 }
> >                 goto out_unknown;
> > --
> > 2.21.0.1020.gf2820cf01a-goog
> >
> 
> Reviewed-by: Jett Rink <jettrink@chromium.org>

Reviewed-by: Mario Limonciello <mario.limonciello@dell.com>

WARNING: multiple messages have this Message-ID (diff)
From: <Mario.Limonciello@dell.com>
To: jettrink@chromium.org, mathewk@chromium.org
Cc: linux-kernel@vger.kernel.org, acelan.kao@canonical.com,
	andy@infradead.org, dvhart@infradead.org,
	platform-driver-x86@vger.kernel.org
Subject: RE: [PATCH v2] platform/x86: intel-vbtn: Report switch events when event wakes device
Date: Tue, 21 May 2019 13:42:00 +0000	[thread overview]
Message-ID: <a7a23cbea93d46b48f7c9bd4e4cd4314@AUSX13MPC105.AMER.DELL.COM> (raw)
In-Reply-To: <CAK+PMK47_OE-BgOYD_TD0kwxD4RG+nS9Wstg4ydUy7yV9nVmHQ@mail.gmail.com>

> -----Original Message-----
> From: Jett Rink <jettrink@chromium.org>
> Sent: Tuesday, May 21, 2019 8:37 AM
> To: Mathew King
> Cc: linux-kernel; AceLan Kao; Andy Shevchenko; Darren Hart; platform-driver-
> x86@vger.kernel.org; Limonciello, Mario
> Subject: Re: [PATCH v2] platform/x86: intel-vbtn: Report switch events when event
> wakes device
> 
> 
> [EXTERNAL EMAIL]
> 
> On Mon, May 20, 2019 at 4:41 PM Mathew King <mathewk@chromium.org>
> wrote:
> >
> > When a switch event, such as tablet mode/laptop mode or docked/undocked,
> > wakes a device make sure that the value of the swich is reported.
> > Without when a device is put in tablet mode from laptop mode when it is
> > suspended or vice versa the device will wake up but mode will be
> > incorrect.
> >
> > Tested by suspending a device in laptop mode and putting it in tablet
> > mode, the device resumes and is in tablet mode. When suspending the
> > device in tablet mode and putting it in laptop mode the device resumes
> > and is in laptop mode.
> >
> > Signed-off-by: Mathew King <mathewk@chromium.org>
> >
> > ---
> > Changes in v2:
> >   - Added comment explaining why switch events are reported
> >   - Format so that checkpatch is happy
> > ---
> >  drivers/platform/x86/intel-vbtn.c | 16 ++++++++++++++--
> >  1 file changed, 14 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/platform/x86/intel-vbtn.c b/drivers/platform/x86/intel-vbtn.c
> > index 06cd7e818ed5..a0d0cecff55f 100644
> > --- a/drivers/platform/x86/intel-vbtn.c
> > +++ b/drivers/platform/x86/intel-vbtn.c
> > @@ -76,12 +76,24 @@ static void notify_handler(acpi_handle handle, u32
> event, void *context)
> >         struct platform_device *device = context;
> >         struct intel_vbtn_priv *priv = dev_get_drvdata(&device->dev);
> >         unsigned int val = !(event & 1); /* Even=press, Odd=release */
> > -       const struct key_entry *ke_rel;
> > +       const struct key_entry *ke, *ke_rel;
> >         bool autorelease;
> >
> >         if (priv->wakeup_mode) {
> > -               if (sparse_keymap_entry_from_scancode(priv->input_dev, event)) {
> > +               ke = sparse_keymap_entry_from_scancode(priv->input_dev, event);
> > +               if (ke) {
> >                         pm_wakeup_hard_event(&device->dev);
> > +
> > +                       /*
> > +                        * Switch events like tablet mode will wake the device
> > +                        * and report the new switch position to the input
> > +                        * subsystem.
> > +                        */
> Thanks for adding the comment; This looks good to me.
> 
> > +                       if (ke->type == KE_SW)
> > +                               sparse_keymap_report_event(priv->input_dev,
> > +                                                          event,
> > +                                                          val,
> > +                                                          0);
> >                         return;
> >                 }
> >                 goto out_unknown;
> > --
> > 2.21.0.1020.gf2820cf01a-goog
> >
> 
> Reviewed-by: Jett Rink <jettrink@chromium.org>

Reviewed-by: Mario Limonciello <mario.limonciello@dell.com>

  reply	other threads:[~2019-05-21 13:43 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-20 22:41 [PATCH v2] platform/x86: intel-vbtn: Report switch events when event wakes device Mathew King
2019-05-21 13:37 ` Jett Rink
2019-05-21 13:42   ` Mario.Limonciello [this message]
2019-05-21 13:42     ` Mario.Limonciello
2019-05-24 16:31     ` Andy Shevchenko

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=a7a23cbea93d46b48f7c9bd4e4cd4314@AUSX13MPC105.AMER.DELL.COM \
    --to=mario.limonciello@dell.com \
    --cc=acelan.kao@canonical.com \
    --cc=andy@infradead.org \
    --cc=dvhart@infradead.org \
    --cc=jettrink@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathewk@chromium.org \
    --cc=platform-driver-x86@vger.kernel.org \
    /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.