All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Mundt <lethal@linux-sh.org>
To: Ben Gardiner <bengardiner@nanometrics.ca>
Cc: Kevin Hilman <khilman@deeprootsystems.com>,
	davinci-linux-open-source@linux.davincidsp.com,
	linux-input@vger.kernel.org,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Chris Cordahi <christophercordahi@nanometrics.ca>,
	Alexander Clouter <alex@digriz.org.uk>
Subject: Re: [PATCH 1/4] input: gpio_keys: polling mode support
Date: Tue, 16 Nov 2010 18:36:05 +0900	[thread overview]
Message-ID: <20101116093605.GD1330@linux-sh.org> (raw)
In-Reply-To: <8891d088e9a16122c780f737b1b1ec35f9517c36.1289835508.git.bengardiner@nanometrics.ca>

On Mon, Nov 15, 2010 at 02:07:50PM -0500, Ben Gardiner wrote:
> diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c
> index 6069abe..477802a 100644
> --- a/drivers/input/keyboard/gpio_keys.c
> +++ b/drivers/input/keyboard/gpio_keys.c
> @@ -44,6 +48,26 @@ struct gpio_keys_drvdata {
>  	struct gpio_button_data data[0];
>  };
>  
> +#if !defined(CONFIG_INPUT_POLLDEV) && !defined(CONFIG_INPUT_POLLDEV_MODULE)
> +inline struct input_polled_dev *input_allocate_polled_device(void)
> +{
> +	return NULL;
> +}
> +
> +inline void input_free_polled_device(struct input_polled_dev *poll_dev)
> +{
> +}
> +
> +inline int input_register_polled_device(struct input_polled_dev *dev)
> +{
> +	return -ENXIO;
> +}
> +
> +inline void input_unregister_polled_device(struct input_polled_dev *poll_dev)
> +{
> +}
> +#endif
> +

Wouldn't these be better off in linux/input-polldev.h?

> +#if !defined(CONFIG_INPUT_POLLDEV) && !defined(CONFIG_INPUT_POLLDEV_MODULE)
> +	if (pdata->poll_interval) {
> +		dev_err(dev, "device needs polling (enable INPUT_POLLDEV)\n");
> +		return -EINVAL;
> +	}
> +#endif
> +
This you could probably just shove in to..

>  	ddata = kzalloc(sizeof(struct gpio_keys_drvdata) +
>  			pdata->nbuttons * sizeof(struct gpio_button_data),
>  			GFP_KERNEL);
> -	input = input_allocate_device();
> +	if (pdata->poll_interval) {
> +		poll_dev = input_allocate_polled_device();
> +		input = poll_dev ? poll_dev->input : 0;
> +	} else
> +		input = input_allocate_device();
>  	if (!ddata || !input) {
>  		dev_err(dev, "failed to allocate state\n");
>  		error = -ENOMEM;
>  		goto fail1;

this. Then just get rid of the ifdefs, as the
input_allocate_polled_device() case will have already NULL'ed out.

The rest is obviously fine with me!

       reply	other threads:[~2010-11-16  9:36 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <cover.1289835508.git.bengardiner@nanometrics.ca>
     [not found] ` <8891d088e9a16122c780f737b1b1ec35f9517c36.1289835508.git.bengardiner@nanometrics.ca>
2010-11-16  9:36   ` Paul Mundt [this message]
2010-11-16 18:28     ` [PATCH 1/4] input: gpio_keys: polling mode support Ben Gardiner
     [not found] ` <cover.1289835508.git.bengardiner-ScDXFp4xN3PN+rMO2ozGnw@public.gmane.org>
2010-11-16 19:39   ` [PATCH v2 0/4] da850-evm: add gpio-{keys, leds} for UI and BB expanders Ben Gardiner
2010-11-16 19:39     ` [PATCH v2 0/4] da850-evm: add gpio-{keys,leds} " Ben Gardiner
2010-11-16 19:39     ` [PATCH v2 1/4] input: gpio_keys: polling mode support Ben Gardiner
2010-11-16 19:39     ` [PATCH v2 2/4] da850-evm: add UI Expander pushbuttons Ben Gardiner
2010-11-19  9:58       ` Nori, Sekhar
2010-11-19  9:58         ` Nori, Sekhar
2010-11-19 15:38         ` Ben Gardiner
2010-11-19 15:38           ` Ben Gardiner
2010-11-22 11:49           ` Nori, Sekhar
2010-11-22 13:50             ` Ben Gardiner
2010-11-23 12:38               ` Nori, Sekhar
2010-11-23 13:29                 ` Ben Gardiner
2010-11-23 13:29                   ` Ben Gardiner
2010-11-23 15:48                 ` Kevin Hilman
2010-11-23 15:48                   ` Kevin Hilman
2010-11-23 17:58                   ` Ben Gardiner
2010-11-23 17:58                     ` Ben Gardiner
2010-11-24  6:09                   ` Paul Mundt
2010-11-24 17:17                     ` Ben Gardiner
2010-11-24 17:17                       ` Ben Gardiner
     [not found]     ` <cover.1289935504.git.bengardiner-ScDXFp4xN3PN+rMO2ozGnw@public.gmane.org>
2010-11-16 19:39       ` [PATCH v2 3/4] da850-evm: extract defines for SEL{A, B, C} pins in UI expander Ben Gardiner
2010-11-16 19:39         ` [PATCH v2 3/4] da850-evm: extract defines for SEL{A,B,C} " Ben Gardiner
2010-11-19 11:19         ` [PATCH v2 3/4] da850-evm: extract defines for SEL{A, B, C} " Nori, Sekhar
2010-11-19 11:19           ` Nori, Sekhar
2010-11-19 15:38           ` Ben Gardiner
2010-11-16 19:39     ` [PATCH v2 4/4] da850-evm: add baseboard UI expander buttons, switches and LEDs Ben Gardiner
2010-11-19 12:14       ` Nori, Sekhar
2010-11-19 12:14         ` Nori, Sekhar
2010-11-19 15:40         ` Ben Gardiner
2010-11-19 15:40           ` Ben Gardiner
2010-11-19 17:02           ` Dmitry Torokhov
2010-11-19 17:02             ` Dmitry Torokhov
2010-11-19 17:15             ` Ben Gardiner
2010-11-22 12:00           ` Nori, Sekhar
2010-11-22 14:15             ` Ben Gardiner
     [not found]               ` <AANLkTin8+y0xkjv+RmnSZNKXgfwr2iV3c9P7cBMfVw3k-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-11-23 12:42                 ` Nori, Sekhar
2010-11-23 12:42                   ` Nori, Sekhar
2010-11-23 13:32                   ` Ben Gardiner
2010-11-19 21:37     ` [PATCH v3 0/4] da850-evm: add gpio-{keys,leds} for UI and BB expanders Ben Gardiner
2010-11-19 21:37       ` [PATCH v3 1/4] input: gpio_keys: polling mode support Ben Gardiner
2010-11-19 21:37       ` [PATCH v3 2/4] da850-evm: add UI Expander pushbuttons Ben Gardiner
2010-11-19 21:37       ` [PATCH v3 3/4] da850-evm: extract defines for SEL{A,B,C} pins in UI expander Ben Gardiner
2010-11-19 21:41         ` [PATCH v3 3/4] da850-evm: extract defines for SEL{A, B, C} " Victor Rodriguez
2010-11-19 21:41           ` Victor Rodriguez
     [not found]           ` <AANLkTimOByqsZjCYoz=pjwT7jcgN76Sgi4W6SFJ9+N-d-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-11-19 22:25             ` Ben Gardiner
2010-11-19 22:25               ` Ben Gardiner
2010-11-19 21:37       ` [PATCH v3 4/4] da850-evm: add baseboard GPIO expander buttons, switches and LEDs Ben Gardiner
2010-11-23 19:40       ` [PATCH v4 0/5] da850-evm: add gpio-{keys,leds} for UI and BB expanders Ben Gardiner
     [not found]         ` <cover.1290540916.git.bengardiner-ScDXFp4xN3PN+rMO2ozGnw@public.gmane.org>
2010-11-23 19:40           ` [PATCH v4 1/5] input: gpio_keys: polling mode support Ben Gardiner
2010-11-23 19:40             ` Ben Gardiner
2010-11-23 19:40         ` [PATCH v4 2/5] da850-evm: add UI Expander pushbuttons Ben Gardiner
2010-11-23 19:40           ` Ben Gardiner
2010-11-24 13:16           ` Nori, Sekhar
2010-11-24 13:16             ` Nori, Sekhar
2010-11-24 17:16             ` Ben Gardiner
2010-11-24 17:16               ` Ben Gardiner
2010-11-23 19:40         ` [PATCH v4 3/5] da850-evm: extract defines for SEL{A,B,C} pins in UI expander Ben Gardiner
2010-11-23 19:40         ` [PATCH v4 4/5] da850-evm: add baseboard GPIO expander buttons, switches and LEDs Ben Gardiner
2010-11-23 19:41         ` [PATCH v4 5/5] da850-evm: KEYBOARD_GPIO and INPUT_POLLDEV Kconfig conditionals Ben Gardiner
2010-11-23 19:41           ` Ben Gardiner
2010-11-24 21:59         ` [PATCH v5 0/5] da850-evm: add gpio-{keys,leds} for UI and BB expanders Ben Gardiner
2010-11-24 21:59           ` [PATCH v5 1/5] [WIP] input: add input driver for polled GPIO buttons Ben Gardiner
2010-11-24 21:59             ` Ben Gardiner
2010-11-24 21:59           ` [PATCH v5 2/5] da850-evm: add UI Expander pushbuttons Ben Gardiner
2010-11-24 21:59             ` Ben Gardiner
2010-11-24 21:59           ` [PATCH v5 3/5] da850-evm: extract defines for SEL{A,B,C} pins in UI expander Ben Gardiner
2010-11-24 21:59           ` [PATCH v5 4/5] da850-evm: add baseboard GPIO expander buttons, switches and LEDs Ben Gardiner
2010-11-24 21:59           ` [PATCH v5 5/5] da850-evm: KEYBOARD_GPIO_POLLED Kconfig conditional Ben Gardiner
2010-11-24 21:59             ` Ben Gardiner
2010-12-09 21:51           ` [PATCH v6 0/5] da850-evm: add gpio-{keys,leds} for UI and BB expanders Ben Gardiner
     [not found]             ` <cover.1291931041.git.bengardiner-ScDXFp4xN3PN+rMO2ozGnw@public.gmane.org>
2010-12-09 21:51               ` [PATCH v6 1/5] Input: add input driver for polled GPIO buttons Ben Gardiner
2010-12-09 21:51                 ` Ben Gardiner
2010-12-10 15:50                 ` Kevin Hilman
2010-12-09 21:51             ` [PATCH v6 2/5] da850-evm: add UI Expander pushbuttons Ben Gardiner
2010-12-09 21:51               ` Ben Gardiner
2010-12-09 21:51             ` [PATCH v6 3/5] da850-evm: extract defines for SEL{A,B,C} pins in UI expander Ben Gardiner
2010-12-09 21:51             ` [PATCH v6 4/5] da850-evm: add baseboard GPIO expander buttons, switches and LEDs Ben Gardiner
2010-12-09 21:51             ` [PATCH v6 5/5] da850-evm: KEYBOARD_GPIO_POLLED Kconfig conditional Ben Gardiner
2010-12-09 21:51               ` Ben Gardiner
2010-12-10 16:16             ` [PATCH v6 0/5] da850-evm: add gpio-{keys,leds} for UI and BB expanders Kevin Hilman
2010-12-10 16:33               ` Ben Gardiner
2010-12-10 16:33                 ` Ben Gardiner
2010-12-11  0:04                 ` Kevin Hilman
2010-12-11  0:04                   ` Kevin Hilman
2010-12-13 17:02                 ` Ben Gardiner
2010-12-13 17:02                   ` Ben Gardiner
     [not found]                   ` <AANLkTi=HiJGwtznGRzFDz-4ywsB3rYPW0yF5U_RUruzV-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-12-13 21:53                     ` [PATCH v6 0/5] da850-evm: add gpio-{keys, leds} " Kevin Hilman
2010-12-13 21:53                       ` [PATCH v6 0/5] da850-evm: add gpio-{keys,leds} " Kevin Hilman
2010-12-14  4:31                       ` Ben Gardiner
2010-12-14  4:31                         ` Ben Gardiner
2010-12-14 16:17                       ` Ben Gardiner
2010-12-14 17:10                         ` Kevin Hilman
2010-12-17 15:15                           ` Ben Gardiner

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=20101116093605.GD1330@linux-sh.org \
    --to=lethal@linux-sh.org \
    --cc=alex@digriz.org.uk \
    --cc=bengardiner@nanometrics.ca \
    --cc=christophercordahi@nanometrics.ca \
    --cc=davinci-linux-open-source@linux.davincidsp.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-input@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.