aboutsummaryrefslogtreecommitdiff
path: root/drivers/input/keyboard
AgeCommit message (Collapse)AuthorFilesLines
2008-04-18Fix sh_keysc double freeMagnus Damm1-1/+0
Avoid double free situation from happening by removing input_free_device() after input_unregister_device(). Suggested by Dmitry Torokhov. Signed-off-by: Magnus Damm <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2008-04-18sh: SuperH KEYSC platform driverMagnus Damm3-0/+291
Add a platform driver for the SuperH KEYSC block. The driver expects to get mode, timing information and keypad layout from the board code as platform data. The board code is resonsible for pin configuration. Both sh7343 and sh7722 should be supported, but only the sh7722 processor has been tested so far. SH_KEYSC_MODE_3 is yet to be tested. Signed-off-by: Magnus Damm <[email protected]> Cc: Dmitry Torokhov <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2008-04-15Input: omap-keypad - fix build warningDavid Brownell1-2/+5
Fix the following build warning: drivers/input/keyboard/omap-keypad.c: In function 'omap_kp_probe': drivers/input/keyboard/omap-keypad.c:418: warning: 'row_idx' is used uninitialized in this function drivers/input/keyboard/omap-keypad.c:421: warning: 'col_idx' is used uninitialized in this function These variables are useful when cpu_is_omap24xx(), and otherwise just for useless cleanup. Signed-off-by: David Brownell <[email protected]> Signed-off-by: Tony Lindgren <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-04-15Input: gpio_keys - irq handling cleanupDavid Brownell1-1/+2
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 <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-04-02Input: tosakbd - fix suspendDmitry Baryshkov1-3/+18
Signed-off-by: Dmitry Baryshkov <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-04-02Input: locomokbd - add 'off' button support for Sharp Collie/PoodleHelge Deller1-25/+48
Enables the Sharp Zaurus Collie and Poodle devices to be turned off by pressing the "Cancel" button for a few seconds (as designed by Sharp). Additional small cleanups: - removal of unused #defines and variables - add missing __devinit/__devexit/__devinitconst annotations - reorganized copyright notice Signed-off-by: Helge Deller <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-03-20Input: pxa27x - fix keypad KPC macrosSamuel Ortiz1-3/+3
We want to mask (key_number - 1), not key_number. The current implementation works fine for all values but the maximum one, i.e. 8. Signed-off-by: Samuel Ortiz <[email protected]> Acked-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - also enable on PXA3xxEric Miao1-3/+3
Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - add debounce_interval to the keypad platform dataEric Miao1-0/+1
Currently, only one debounce_interval is introduced for both direct and matrix keys. This is true in most cases, although the keypad controller supports different debounce for direct/matrix keys. Some platforms do require this to be tuned, instead of the default reset value of 100ms. Rotary encoder will always use zero debounce time for now to achieve certain sensitivity. Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - use device resources for I/O memory mapping and IRQEric Miao1-34/+124
1. use ioremap() for registers access, this improves the portability of the driver (e.g. same IP on different processor with different I/O memory range), and make it possible to remove those registers definition in pxa-regs.h as PXA is undergoing a clean-up of that header file 2. use device specific IRQ instead of hardcoded IRQ_KEYPAD, same reason as above 3. clean up the error handling path in _probe() 4. remove DRIVER_NAME and use pdev->name when necessary, we don't actually need a constant string literals Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - enable rotary encoders and direct keysEric Miao1-29/+134
1. Rotary encoder events can be configured either as relative events as the legacy code does or as any specified key code, this is useful on some platform which uses the rotary keys as KEY_{UP/DOWN/LEFT/RIGHT} 2. Add support for direct keys, the corresponding keycodes for each direct key can now be specified within the platform data 3. Remove the direct/rotary key detection code from the IRQ handler to dedicated functions to improve readability Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - introduce pxa27x_keypad_config()Eric Miao1-32/+28
Introduce pxa27x_keypad_config() for keypad registers configuration and remove the reg_kpc, reg_kprec from platform data structure so that configurations of keypad registers can be centralized to a single function. It can also be re-used when resuming. Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - introduce driver structure and use KEY() to define ↵Eric Miao1-57/+167
matrix keys 1. Introduce the "struct pxa27x_keypad" structure for driver specific information, such as "struct clk", generated matrix key codes and so on 2. Use KEY() macro to define matrix keys, instead of original 8x8 map this makes definition easier with keypad where keys are sparse 3. Keep a generated array in "struct pxa27x_keypad" for fast lookup 4. Separate the matrix scan into a dedicated function for readability and report only those keys whose state has been changed, instead of report all states 5. Make use of KPAS to decide the faster path if only one key has been detected Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - remove pin configuration from the driverEric Miao1-4/+0
The pin configurations will slowly be moved to the board specific code at initialization thus to make the driver more generic. Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-31Input: pxa27x_keypad - rename the driver (was pxa27x_keyboard)Eric Miao3-45/+45
The controller should really be called keypad, and also align the naming of functions and structures to use "pxa27x_keypad" as prefix, instead of "pxakbd". Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-21Input: remove duplicate includesAndre Haupt2-2/+0
Signed-off-by: Andre Haupt <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-21Input: add Tosa keyboard driverDmitry Baryshkov3-0/+437
Add keyboard support on tosa (Sharp Zaurus SL-6000x). Largely based on patches by Dirk Opfer. Signed-off-by: Dmitry Baryshkov <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-21Input: drop redundant includes of moduleparam.hJulia Lawall2-2/+0
Drop #include <linux/moduleparam.h> in files that also include linux/module.h, since module.h includes moduleparam.h already. Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-21Input: atkbd - remove unneeded synchronize_sched()Dmitry Torokhov1-1/+0
atkbd_disable() provides all necessary synchronization with atkbd_interrupt(). Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-21Input: atkbd - properly handle special keys on Dell LatitudesGiel de Nijs1-17/+72
Most of Fn+F? special keys on (at least) the Dell Latitude laptops don't generate a hardware key release event so the driver has to generate one. Signed-off-by: Giel de Nijs <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-14Input: improve Kconfig help entries for HP Jornada devicesKristoffer Ericson1-6/+6
Signed-off-by: Kristoffer Ericson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2008-01-03Input: spitzkbd - fix suspend key handlingRichard Purdie1-0/+1
The spitz keyboard driver reports KEY_SUSPEND events but doesn't register its use of this event in the keybit bitfield, breaking input events for this key. This patch fixes that by registering the key in the keybit bitfield. Signed-off-by: Richard Purdie <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-12-14Input: jornada680_kbd - fix default keymapKristoffer Ericson1-20/+20
This patch fixes the HP Jornada 6xx keyboard default keymap which had some bad keymap values. This resulted in wrong key being returned when pressed (for example, key 'y' returned 'r'). Also, while we are at it lets arrange the include files in alphabetical order. Signed-off-by: Kristoffer Ericson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-11-27Input: bf54x-keys - keypad does not exist on BF544 partsMike Frysinger1-1/+1
Signed-off-by: Mike Frysinger <[email protected]> Signed-off-by: Bryan Wu <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-11-21Input: gpio-keys - request and configure GPIOsHerbert Valerio Riedel1-10/+28
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 <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-10-22Merge branch 'for-linus' of ↵Linus Torvalds1-1/+0
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: appletouch - apply idle reset logic to all touchpads Input: usbtouchscreen - add support for GoTop tablet devices Input: bf54x-keys - return real error when request_irq() fails Input: i8042 - export i8042_command()
2007-10-22Input: bf54x-keys - return real error when request_irq() failsMichael Hennerich1-1/+0
Signed-off-by: Michael Hennerich <[email protected]> Signed-off-by: Bryan Wu <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-10-19Convert files to UTF-8 and some cleanupsJan Engelhardt1-2/+2
* Convert files to UTF-8. * Also correct some people's names (one example is Eißfeldt, which was found in a source file. Given that the author used an ß at all in a source file indicates that the real name has in fact a 'ß' and not an 'ss', which is commonly used as a substitute for 'ß' when limited to 7bit.) * Correct town names (Goettingen -> Göttingen) * Update Eberhard Mönkeberg's address (http://lkml.org/lkml/2007/1/8/313) Signed-off-by: Jan Engelhardt <[email protected]> Signed-off-by: Adrian Bunk <[email protected]>
2007-10-19get rid of input BIT* duplicate definesJiri Slaby15-27/+39
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 <[email protected]> Cc: <[email protected]> Acked-by: Jiri Kosina <[email protected]> Cc: <[email protected]> Acked-by: Marcel Holtmann <[email protected]> Cc: <[email protected]> Acked-by: Mauro Carvalho Chehab <[email protected]> Cc: <[email protected]> Cc: <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-10-15Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds1-5/+20
* 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (95 commits) [ARM] 4578/1: CM-x270: PCMCIA support [ARM] 4577/1: ITE 8152 PCI bridge support [ARM] 4576/1: CM-X270 machine support [ARM] pxa: Avoid pxa_gpio_mode() in gpio_direction_{in,out}put() [ARM] pxa: move pxa_set_mode() from pxa2xx_mainstone.c to mainstone.c [ARM] pxa: move pxa_set_mode() from pxa2xx_lubbock.c to lubbock.c [ARM] pxa: Make cpu_is_pxaXXX dependent on configuration symbols [ARM] pxa: PXA3xx base support [NET] smc91x: fix PXA DMA support code [SERIAL] Fix console initialisation ordering [ARM] pxa: tidy up arch/arm/mach-pxa/Makefile [ARM] Update arch/arm/Kconfig for drivers/Kconfig changes [ARM] 4600/1: fix kernel build failure with build-id-supporting binutils [ARM] 4599/1: Preserve ATAG list for use with kexec (2.6.23) [ARM] Rename consistent_sync() as dma_cache_maint() [ARM] 4572/1: ep93xx: add cirrus logic edb9307 support [ARM] 4596/1: S3C2412: Correct IRQs for SDI+CF and add decoding support [ARM] 4595/1: ns9xxx: define registers as void __iomem * instead of volatile u32 [ARM] 4594/1: ns9xxx: use the new gpio functions [ARM] 4593/1: ns9xxx: implement generic clockevents ...
2007-10-15Merge branch 'for-linus' of ↵Linus Torvalds8-21/+1223
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (40 commits) Input: use full RCU API Input: remove tsdev interface Input: add support for Blackfin BF54x Keypad controller Input: appletouch - another fix for idle reset logic HWMON: hdaps - switch to using input-polldev Input: add support for SEGA Dreamcast keyboard Input: omap-keyboard - don't pretend we support changing keymap Input: lifebook - fix X and Y axis range Input: usbtouchscreen - add support for GeneralTouch devices Input: fix open count handling in input interfaces Input: keyboard - add CapsShift lock Input: adbhid - produce all CapsLock key events Input: ALPS - add signature for ThinkPad R61 Input: jornada720_kbd - send MSC_SCAN events Input: add support for the HP Jornada 7xx (710/720/728) touchscreen Input: add support for HP Jornada 7xx onboard keyboard Input: add support for HP Jornada onboard keyboard (HP6XX) Input: ucb1400_ts - use schedule_timeout_uninterruptible Input: xpad - fix dependancy on LEDS class Input: auto-select INPUT for MAC_EMUMOUSEBTN option ... Resolved conflicts manually in drivers/hwmon/applesmc.c: converting from a class device to a device and converting to use input-polldev created a few apparently trivial clashes..
2007-10-15Atari keyboard: incorporate additional review commentsGeert Uytterhoeven1-3/+4
Atari keyboard: incorporate additional review comments: o Kill reference to source file name o Return error value from input_register_device() instead of -ENOMEM Signed-off-by: Geert Uytterhoeven <[email protected]> Cc: Dmitry Torokhov <[email protected]> Cc: Michael Schmitz <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-10-13m68k: Atari input drivers cleanupGeert Uytterhoeven1-12/+145
m68k: Atari input drivers cleanup: - memleak on failed init/register of input devices fixed - correct keycodes table (Atari keycodes are almost, but not entirely, equal to Linux keycodes). Signed-off-by: Michael Schmitz <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-10-13Input: add support for Blackfin BF54x Keypad controllerMichael Hennerich3-1/+392
Signed-off-by: Michael Hennerich <[email protected]> Signed-off-by: Bryan Wu <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-10-12Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6Dmitry Torokhov1-1/+0
Conflicts: drivers/macintosh/adbhid.c
2007-10-12Input: add support for SEGA Dreamcast keyboardAdrian McMenamin3-0/+263
Signed-off by: Adrian McMenamin <[email protected]> Acked-by: Arjan van de Ven <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-10-12[ARM] pxa: update pxa27x keypad driver to use clk supportRussell King1-5/+20
Signed-off-by: Russell King <[email protected]>
2007-10-12Input: omap-keyboard - don't pretend we support changing keymapDmitry Torokhov1-13/+9
The driver's keymap is a mix of hardware codes and keycodes and so may not be used with default implementations of getkeycode() and setkeycode(). Also some whitespace cleanup. Signed-off-by: Dmitry Torokhov <[email protected]>
2007-10-11Input: jornada720_kbd - send MSC_SCAN eventsDmitry Torokhov1-4/+8
Send MSC_SCAN events to userspace to ease task of adjusting keymap. Signed-off-by: Dmitry Torokhov <[email protected]>
2007-09-26Input: add support for HP Jornada 7xx onboard keyboardKristoffer Ericson3-0/+192
The driver supports onboard keyboards of HP Jornada 710/720/728 Signed-off-by: Kristoffer Ericson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-09-26Input: add support for HP Jornada onboard keyboard (HP6XX)Kristoffer Ericson3-0/+289
Signed-off-by: Kristoffer Ericson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-09-26Input: gpio-keys - add suspend/resume supportAnti Sullin1-0/+52
This patch adds suspend/resume support and enables wakeup from gpio_keys buttons. Signed-off-by: Anti Sullin <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-09-26Input: gpio_keys - verify that supplied GPIO numbers are validAnti Sullin1-7/+22
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 <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-07-23Input: gpio_keys - remove duplicate includesJesper Juhl1-1/+0
Signed-off-by: Jesper Juhl <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-07-10Input: pxa27x_keyboard - fix compile errorMike Rapoport1-1/+1
Signed-off-by: Mike Rapoport <[email protected]> Acked-by: Rodolfo Giometti <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-07-10Input: atkbd - change mapping for e032 from KEY_WWW to KEY_HOMEPAGEHans de Goede1-2/+2
WWW/Homepage key on Microsoft-compatible keyboards generates KEY_WWW when connected via PS/2 port but KEY_HOMEPAGE when connected via USB. This patch changes mapping in atkbd to match one in HID driver. Signed-off-by: Hans de Goede <[email protected]> Acked-by: Vojtech Pavlik <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-07-05Merge branch 'for-linus' of ↵Linus Torvalds1-17/+30
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: document some of keycodes Input: add a new EV_SW SW_RADIO event, for radio switches on laptops Input: serio - take drv_mutex in serio_cleanup() Input: atkbd - use printk_ratelimit for spurious ACK messages Input: atkbd - throttle LED switching Input: i8042 - add HP Pavilion ZT1000 to the MUX blacklist
2007-06-28Input: atkbd - use printk_ratelimit for spurious ACK messagesQi Yong1-3/+4
Signed-off-by: Qi Yong <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2007-06-28Input: atkbd - throttle LED switchingDmitry Torokhov1-14/+26
On some boxes keyboard controllers are too slow to withstand continuous flow of requests to turn keyboard LEDs on and off and start losing some keypresses or even all of them. Delay executing of LED switching request if we had another one within 50 ms thus easing load on the controller. Signed-off-by: Dmitry Torokhov <[email protected]>
2007-06-20x86_64: Quieten Atari keyboard warnings in KconfigAndi Kleen1-0/+3
Not directly related to x86, but I got tired of seeing these warnings on every kconfig update when building on a non m68k box: drivers/input/keyboard/Kconfig:170:warning: 'select' used by config symbol 'KEYBOARD_ATARI' refers to undefined symbol 'ATARI_KBD_CORE' drivers/input/mouse/Kconfig:182:warning: 'select' used by config symbol 'MOUSE_ATARI' refers to undefined symbol 'ATARI_KBD_CORE' I moved the definition of ATARI_KBD_CORE into drivers/input/keyboard/Kconfig so it's always seen by Kconfig. Cc: Geert Uytterhoeven <[email protected]> Acked-by: Roman Zippel <[email protected]> Signed-off-by: Andi Kleen <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>