From: Lee Jones <lee.jones@linaro.org> To: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, arnd@arndb.de, linus.walleij@stericsson.com, Jonas Aaberg <jonas.aberg@stericsson.com>, linux-input@vger.kernel.org, Philippe Langlais <philippe.langlais@linaro.org> Subject: Re: [PATCH 1/2] input: gpio-keys: Disable hardware on suspend Date: Mon, 26 Nov 2012 09:05:03 +0000 [thread overview] Message-ID: <20121126090503.GB12782@gmail.com> (raw) In-Reply-To: <20121125083229.GB21091@core.coreip.homeip.net> > On Thu, Nov 22, 2012 at 01:23:36PM +0000, Lee Jones wrote: > > From: Jonas Aaberg <jonas.aberg@stericsson.com> > > > > Disable hardware if active when suspending if the hw can not > > wake the system from suspend. > > How about below instead (needs the other patch I have just sent out)? Sorry Dmitry, I'm a little confused. What does this mean? > Input: gpio-keys - disable hardware on suspend > > From: Jonas Aaberg <jonas.aberg@stericsson.com> > > Disable hardware if active when suspending if the hw can not > wake the system from suspend. > > Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com> > Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org> > Reviewed-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> > Signed-off-by: Lee Jones <lee.jones@linaro.org> > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> > --- > drivers/input/keyboard/gpio_keys.c | 27 ++++++++++++++++++++++----- > 1 file changed, 22 insertions(+), 5 deletions(-) > > diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c > index c7764ca..79435de 100644 > --- a/drivers/input/keyboard/gpio_keys.c > +++ b/drivers/input/keyboard/gpio_keys.c > @@ -803,6 +803,7 @@ static int gpio_keys_remove(struct platform_device *pdev) > static int gpio_keys_suspend(struct device *dev) > { > struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev); > + struct input_dev *input = ddata->input; > int i; > > if (device_may_wakeup(dev)) { > @@ -811,6 +812,11 @@ static int gpio_keys_suspend(struct device *dev) > if (bdata->button->wakeup) > enable_irq_wake(bdata->irq); > } > + } else { > + mutex_lock(&input->mutex); > + if (input->users) > + gpio_keys_close(input); > + mutex_unlock(&input->mutex); > } > > return 0; > @@ -819,16 +825,27 @@ static int gpio_keys_suspend(struct device *dev) > static int gpio_keys_resume(struct device *dev) > { > struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev); > + struct input_dev *input = ddata->input; > + int error = 0; > int i; > > - for (i = 0; i < ddata->pdata->nbuttons; i++) { > - struct gpio_button_data *bdata = &ddata->data[i]; > - if (bdata->button->wakeup && device_may_wakeup(dev)) > - disable_irq_wake(bdata->irq); > + if (device_may_wakeup(dev)) { > + for (i = 0; i < ddata->pdata->nbuttons; i++) { > + struct gpio_button_data *bdata = &ddata->data[i]; > + if (bdata->button->wakeup) > + disable_irq_wake(bdata->irq); > + } > + } else { > + mutex_lock(&input->mutex); > + if (input->users) > + error = gpio_keys_open(input); > + mutex_unlock(&input->mutex); > } > > - gpio_keys_report_state(ddata); > + if (error) > + return error; > > + gpio_keys_report_state(ddata); > return 0; > } > #endif -- Lee Jones Linaro ST-Ericsson Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
WARNING: multiple messages have this Message-ID (diff)
From: lee.jones@linaro.org (Lee Jones) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 1/2] input: gpio-keys: Disable hardware on suspend Date: Mon, 26 Nov 2012 09:05:03 +0000 [thread overview] Message-ID: <20121126090503.GB12782@gmail.com> (raw) In-Reply-To: <20121125083229.GB21091@core.coreip.homeip.net> > On Thu, Nov 22, 2012 at 01:23:36PM +0000, Lee Jones wrote: > > From: Jonas Aaberg <jonas.aberg@stericsson.com> > > > > Disable hardware if active when suspending if the hw can not > > wake the system from suspend. > > How about below instead (needs the other patch I have just sent out)? Sorry Dmitry, I'm a little confused. What does this mean? > Input: gpio-keys - disable hardware on suspend > > From: Jonas Aaberg <jonas.aberg@stericsson.com> > > Disable hardware if active when suspending if the hw can not > wake the system from suspend. > > Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com> > Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org> > Reviewed-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> > Signed-off-by: Lee Jones <lee.jones@linaro.org> > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> > --- > drivers/input/keyboard/gpio_keys.c | 27 ++++++++++++++++++++++----- > 1 file changed, 22 insertions(+), 5 deletions(-) > > diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c > index c7764ca..79435de 100644 > --- a/drivers/input/keyboard/gpio_keys.c > +++ b/drivers/input/keyboard/gpio_keys.c > @@ -803,6 +803,7 @@ static int gpio_keys_remove(struct platform_device *pdev) > static int gpio_keys_suspend(struct device *dev) > { > struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev); > + struct input_dev *input = ddata->input; > int i; > > if (device_may_wakeup(dev)) { > @@ -811,6 +812,11 @@ static int gpio_keys_suspend(struct device *dev) > if (bdata->button->wakeup) > enable_irq_wake(bdata->irq); > } > + } else { > + mutex_lock(&input->mutex); > + if (input->users) > + gpio_keys_close(input); > + mutex_unlock(&input->mutex); > } > > return 0; > @@ -819,16 +825,27 @@ static int gpio_keys_suspend(struct device *dev) > static int gpio_keys_resume(struct device *dev) > { > struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev); > + struct input_dev *input = ddata->input; > + int error = 0; > int i; > > - for (i = 0; i < ddata->pdata->nbuttons; i++) { > - struct gpio_button_data *bdata = &ddata->data[i]; > - if (bdata->button->wakeup && device_may_wakeup(dev)) > - disable_irq_wake(bdata->irq); > + if (device_may_wakeup(dev)) { > + for (i = 0; i < ddata->pdata->nbuttons; i++) { > + struct gpio_button_data *bdata = &ddata->data[i]; > + if (bdata->button->wakeup) > + disable_irq_wake(bdata->irq); > + } > + } else { > + mutex_lock(&input->mutex); > + if (input->users) > + error = gpio_keys_open(input); > + mutex_unlock(&input->mutex); > } > > - gpio_keys_report_state(ddata); > + if (error) > + return error; > > + gpio_keys_report_state(ddata); > return 0; > } > #endif -- Lee Jones Linaro ST-Ericsson Landing Team Lead Linaro.org ? Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
next prev parent reply other threads:[~2012-11-26 9:05 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-11-22 13:23 [PATCH 1/2] input: gpio-keys: Disable hardware on suspend Lee Jones 2012-11-22 13:23 ` Lee Jones 2012-11-22 13:23 ` Lee Jones 2012-11-22 13:23 ` [PATCH 2/2] input: gpio-keys: Add runtime support Lee Jones 2012-11-22 13:23 ` Lee Jones 2012-11-22 13:23 ` Lee Jones 2012-11-22 14:51 ` Lee Jones 2012-11-22 14:51 ` Lee Jones 2012-11-22 14:51 ` Lee Jones 2012-11-25 8:32 ` [PATCH 1/2] input: gpio-keys: Disable hardware on suspend Dmitry Torokhov 2012-11-25 8:32 ` Dmitry Torokhov 2012-11-26 9:05 ` Lee Jones [this message] 2012-11-26 9:05 ` Lee Jones 2012-11-26 9:32 ` Dmitry Torokhov 2012-11-26 9:32 ` Dmitry Torokhov 2012-12-01 17:01 ` Linus Walleij 2012-12-01 17:01 ` Linus Walleij -- strict thread matches above, loose matches on Subject: below -- 2012-10-11 14:15 Lee Jones 2012-10-11 14:15 ` Lee Jones 2012-10-13 6:17 ` Dmitry Torokhov 2012-10-13 6:17 ` Dmitry Torokhov
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=20121126090503.GB12782@gmail.com \ --to=lee.jones@linaro.org \ --cc=arnd@arndb.de \ --cc=dmitry.torokhov@gmail.com \ --cc=jonas.aberg@stericsson.com \ --cc=linus.walleij@stericsson.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-input@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=philippe.langlais@linaro.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: linkBe 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.