aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/keyboard/gpio_keys.c
Commit message (Collapse)AuthorAge
* Input: gpio-keys - use IRQF_SHAREDDmitry Eremin-Solenikov2009-11-03
| | | | | | | | | | | There is nothing that disallows gpio-keys to share it's IRQ line w/ other drivers. Make it use IRQF_SHARED in request_irq(). An example of other driver with which I'd like to share IRQ line for GPIO buttons is ledtrig-gpio. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio_keys - swtich to dev_pm_opsMike Rapoport2009-07-25
| | | | | Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys - avoid possibility of sleeping in timer functionJani Nikula2009-06-29
| | | | | | | | The gpio_get_value function may sleep, so it should not be called in a timer function. Move gpio_get_value calls to workqueue. Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys - revert 'change timer to workqueue'Jani Nikula2009-06-29
| | | | | | | | | | | | This reverts commit 0b346838c5862bfe911432956a106d602535d030. This commit breaks GPIO debouncing by replacing the original mod_timer with schedule_delayed_work in the interrupt handler. The latter does not kick the timer further on GPIO line changes as it should to perform debouncing. Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys - change timer to workqueueAlek Du2009-06-11
| | | | | | | | The gpio_get_value function of I2C/SPI GPIO expander may sleep thus this function call can not be called in a timer function. Signed-off-by: Alek Du <alek.du@intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys - remove depreciated IRQF_SAMPLE_RANDOM flagDmitry Torokhov2009-04-18
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys - add flag to allow auto repeatDominic Curran2008-10-27
| | | | | | | | This patch adds a flag to gpio-key driver to turn on the input subsystems auto repeat feature if needed. Signed-off-by: Dominic Curran <dcurran@ti.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Merge branch 'next' into for-linusDmitry Torokhov2008-10-15
|\
| * Input: gpio-keys - simplify argument list for report_eventUwe Kleine-König2008-08-08
| | | | | | | | | | | | | | | | | | | | For now this only saves a few instructions (for gpio_keys_report_event, gpio_keys_isr and gpio_check_button one instraction each on ARM using arm-linux-gnu-gcc 4.2.3---I assume this is similar for other arch/compiler combinations). Signed-off-by: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: gpio-keys - optimize interrupt handlerUwe Kleine-König2008-08-08
| | | | | | | | | | | | | | | | By passing a gpio_button_data structure to the handler instead of the whole platform_device the search for the right button can go away. Signed-off-by: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: remove version.h from drivers that don't need itHuang Weiyi2008-08-18
| | | | | | | | | | | | | | | | | | If a driver dies not use LINUX_VERSION_CODE nor KERNEL_VERSION then it does not need to include version.h Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: gpio-keys - make gpio_keys_device_driver staticUwe Kleine-König2008-07-30
| | | | | | | | | | | | | | | | | | This fixes the sparse warning symbol 'gpio_keys_device_driver' was not declared. Should it be static? Signed-off-by: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: gpio-keys - fix possible NULL pointer dereferenceUwe Kleine-König2008-07-30
|/ | | | | | | | | bdata->button is used in gpio_check_button but never initialized. Having a device with debounce_interval != 0 without this patch resulted on an oops on my machine. Signed-off-by: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys debouncing supportDmitry Baryshkov2008-05-16
| | | | | Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: add MODULE_ALIAS() to hotpluggable platform modulesKay Sievers2008-04-24
| | | | | | | | | | | Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable "input" platform drivers, to re-enable auto loading. [dbrownell@users.sourceforge.net: more drivers, registration fixes] Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio_keys - irq handling cleanupDavid Brownell2008-04-15
| | | | | | | | Cleanup IRQ handling in gpio_keys: bail after handling the IRQ, and report IRQ_NONE if we never handle it. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys - request and configure GPIOsHerbert Valerio Riedel2007-11-21
| | | | | | | | | | | Currently, gpio_keys.c assumes the GPIOs to be already properly configured; this patch changes gpio-keys to perform explicit calls to gpio_request() and gpio_configure_input(). This matches the behaviour of leds-gpio. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* get rid of input BIT* duplicate definesJiri Slaby2007-10-19
| | | | | | | | | | | | | | | | | | | | | | get rid of input BIT* duplicate defines use newly global defined macros for input layer. Also remove includes of input.h from non-input sources only for BIT macro definiton. Define the macro temporarily in local manner, all those local definitons will be removed further in this patchset (to not break bisecting). BIT macro will be globally defined (1<<x) Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: <dtor@mail.ru> Acked-by: Jiri Kosina <jkosina@suse.cz> Cc: <lenb@kernel.org> Acked-by: Marcel Holtmann <marcel@holtmann.org> Cc: <perex@suse.cz> Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org> Cc: <vernux@us.ibm.com> Cc: <malattia@linux.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6Dmitry Torokhov2007-10-12
|\ | | | | | | | | | | Conflicts: drivers/macintosh/adbhid.c
| * Input: gpio_keys - remove duplicate includesJesper Juhl2007-07-23
| | | | | | | | | | Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: gpio-keys - add suspend/resume supportAnti Sullin2007-09-26
| | | | | | | | | | | | | | | | This patch adds suspend/resume support and enables wakeup from gpio_keys buttons. Signed-off-by: Anti Sullin <anti.sullin@artecdesign.ee> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: gpio_keys - verify that supplied GPIO numbers are validAnti Sullin2007-09-26
|/ | | | | | | | | | | | As David Brownell pointed out, gpio_keys driver does not check return code of gpio_to_irq(). This patch adds the gpio_to_irq return code check to gpio_keys and moves the IRQ edge type setting to request_irq flags to avoid changing the irq type before we have confirmed we can use it. Signed-off-by: Anti Sullin <anti.sullin@artecdesign.ee> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio_keys - add support for switches (EV_SW)Roman Moravcik2007-05-01
| | | | | | Signed-off-by: Roman Moravcik <roman.moravcik@gmail.com> Signed-off-by: Paul Sokolovsky <pmiscml@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6Dmitry Torokhov2007-05-01
|\ | | | | | | | | | | | | Conflicts: drivers/usb/input/Makefile drivers/usb/input/gtco.c
| * [PATCH] gpio_keys driver shouldn't be ARM-specificDavid Brownell2007-03-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The gpio_keys driver is wrongly ARM-specific; it can't build on other platforms with GPIO suport. This fixes that problem. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Dmitry Torokhov <dtor@mail.ru> Cc: pHilipp Zabel <philipp.zabel@gmail.com> Cc: Haavard Skinnemoen <hskinnemoen@atmel.com> Cc: Russell King <rmk@arm.linux.org.uk> Cc: Richard Purdie <rpurdie@rpsys.net> Cc: Ben Nizette <ben.nizette@iinet.net.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | Input: keyboards - switch to using input_dev->dev.parentDmitry Torokhov2007-04-12
| | | | | | | | | | | | | | | | In preparation for struct class_device -> struct device input core conversion, switch to using input_dev->dev.parent when specifying device position in sysfs tree. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: drivers/input/keyboard - don't access dev->private directlyDmitry Torokhov2007-04-12
|/ | | | | | Use input_get_drvdata() and input_set_drvdata() instead. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: gpio-keys - switch to common GPIO APIPhilipp Zabel2007-02-18
| | | | | | | This adds support for at least SA1100 and S3C24xx CPUs. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* [PATCH] Scheduled removal of SA_xxx interrupt flags fixups 2Thomas Gleixner2007-02-14
| | | | | | | | | | The obsolete SA_xxx interrupt flags have been used despite the scheduled removal. Fixup the remaining users in -mm. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Input: gpio-keys - keyboard driver for GPIO buttonsPhil Blundell2007-01-18
This is an interrupt-driven keyboard driver for simple buttons connected directly to CPU GPIO lines of embedded ARM systems. It supports pxa architectures and is used by a number of PDAs and PocketPC phones in the handhelds.org kernel. Support for other architectures, such as sa11xx and sc2410, will be added once generic GPIO API is available. Signed-off-by: Paul Sokolovsky <pmiscml@gmail.com> Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>