aboutsummaryrefslogtreecommitdiff
path: root/drivers/input/keyboard
AgeCommit message (Collapse)AuthorFilesLines
2014-05-14Input: imx_keypad - make of_device_id array constJingoo Han1-1/+1
Make of_device_id array const, because all OF functions handle it as const. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: gpio_keys_polled - make of_device_id array constJingoo Han1-1/+1
Make of_device_id array const, because all OF functions handle it as const. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: gpio_keys - make of_device_id array constJingoo Han1-1/+1
Make of_device_id array const, because all OF functions handle it as const. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: clps711x-keypad - make of_device_id array constJingoo Han1-1/+1
Make of_device_id array const, because all OF functions handle it as const. Signed-off-by: Jingoo Han <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: gpio_keys - convert to use devm_*Andy Shevchenko1-49/+25
This makes the error handling much more simpler than open-coding everything and in addition makes the probe function smaller an tidier. Signed-off-by: Andy Shevchenko <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: add st-keyscan driverGabriel FERNANDEZ3-0/+286
This patch adds ST Keyscan driver to use the keypad hw a subset of ST boards provide. Specific board setup will be put in the given dt. Signed-off-by: Gabriel Fernandez <[email protected]> Signed-off-by: Giuseppe Condorelli <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-14Input: tc3589x-keypad - support probing from device treeLinus Walleij1-2/+64
Implement device tree probing for the tc3589x keypad driver. This is modeled on the STMPE keypad driver and tested on the Ux500 TVK1281618 UIB. Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-13Input: pxa27x-keypad - fix generating scancodeChao Xie1-1/+6
The number of columns of pxa27x-keypad used by various boards is not fixed. When building keymap with call to: matrix_keypad_build_keymap(keymap_data, NULL, pdata->matrix_key_rows, pdata->matrix_key_cols, keypad->keycodes, input_dev); it will internally calculate needed row shift and use it to fill the keymap. Therefore when calculating the "scancode" we should no longer use constant row shift but also calculate it from number of columns. Signed-off-by: Chao Xie <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-05-12Input: fix ps2/serio module dependencyArnd Bergmann1-1/+1
The ps2 mouse and keyboard drivers use the "serio" framework that they correctly select in Kconfig, and that in turn depends on the i8042 driver, which is also allowed to be disabled for architectures that don't have an i8042. However, Kconfig also allows i8042 to be built as a module while the serio framework is built-in, which causes this link error: drivers/built-in.o: In function `ps2_begin_command': :(.text+0x26b6cc): undefined reference to `i8042_check_port_owner' :(.text+0x26b6d4): undefined reference to `i8042_lock_chip' drivers/built-in.o: In function `ps2_end_command': :(.text+0x26b734): undefined reference to `i8042_check_port_owner' :(.text+0x26b73c): undefined reference to `i8042_unlock_chip' On x86, a specific 'select SERIO_I8042' takes care of it, but not on the other architecture that potentially have a i8042. This patch changes the Kconfig logic to ensure that whenever there is an i8042, it does get used for the serio driver, avoiding the link error above. Signed-off-by: Arnd Bergmann <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-04-24Input: tca8418 - fix loading this driver as a module from a device treeDr. H. Nikolaus Schaller1-0/+7
Loading the tca8418 driver as a module on a device tree based system needs a MODULE_ALIAS because the driver name does not match the automatic name generation rules of a 'compatible' entry on i2c bus. Signed-off-by: H. Nikolaus Schaller <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-04-24Input: atkbd - fix keyboard not working on some LG laptopsSheng-Liang Song1-1/+28
After issuing ATKBD_CMD_RESET_DIS, keyboard on some LG laptops stops working. The workaround is to stop issuing ATKBD_CMD_RESET_DIS commands. In order to keep changes in atkbd driver to the minimum we check DMI signature and only skip ATKBD_CMD_RESET_DIS if we are running on LG LW25-B7HV or P1-J273B. Cc: [email protected] Signed-off-by: Sheng-Liang Song <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-04-03Merge branch 'next' into for-linusDmitry Torokhov7-562/+363
First round of input updates for 3.15.
2014-03-30Input: pmic8xxx-keypad - migrate to DTStephen Boyd1-64/+86
The driver is only supported on DT enabled platforms. Convert the driver to DT so that it can probe properly. Signed-off-by: Stephen Boyd <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-03-30Input: pmic8xxx-keypad - migrate to regmap APIsStephen Boyd1-52/+29
Use the regmap APIs for this driver instead of custom pm8xxx APIs. This breaks this driver's dependency on the pm8xxx APIs and allows us to easily port it to other bus protocols in the future. Signed-off-by: Stephen Boyd <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-03-30Input: pmic8xxx-keypad - migrate to devm_* APIsStephen Boyd1-44/+17
Simplify the error paths and reduce the lines of code in this driver by using the devm_* APIs. Signed-off-by: Stephen Boyd <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-03-30Input: pmic8xxx-keypad - fix build by removing gpio configurationStephen Boyd1-58/+0
The gpio configuration in this driver doesn't work because the gpio.h include doesn't exist. Remove the configuration as it isn't strictly necessary, allowing us to actually compile this driver. If it's needed in the future, it should be done via a pinctrl driver. Signed-off-by: Stephen Boyd <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-03-30Input: add new driver for ARM CLPS711X keypadAlexander Shiyan3-0/+220
This patch adds a new driver for keypad for Cirrus Logic CLPS711X CPUs. Target CPU contain keyboard interface which can scan 8 column lines, so we can read row GPIOs to read status and determine asserted state. Signed-off-by: Alexander Shiyan <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-03-28Input: remove obsolete tnetv107x driversArnd Bergmann3-340/+0
The tnetv107x platform is getting removed, so the touchscreen and keypad drivers for this platform will no longer be needed either. Signed-off-by: Arnd Bergmann <[email protected]> Acked-by: Sekhar Nori <[email protected]> Acked-by: Kevin Hilman <[email protected]> Cc: Dmitry Torokhov <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2014-03-01Merge tag 'v3.14-rc4' into nextDmitry Torokhov1-3/+10
Merge with Linux 3.14-rc4 to bring devm_request_any_context_irq().
2014-02-17Input: imx_keypad - Propagate the real error code on platform_get_irq() failureFabio Estevam1-2/+2
No need to return a 'fake' return value on platform_get_irq() failure. Just return the error code itself instead. Signed-off-by: Fabio Estevam <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-02-15Input: adp5588-keys - get value from data out when dir is outJean-Francois Dagenais1-1/+11
As discussed here: http://ez.analog.com/message/35852, the 5587 revC and 5588 revB spec sheets contain a mistake in the GPIO_DAT_STATx register description. According to R.Shnell at ADI, as well as my own observations, it should read: "GPIO data status (shows GPIO state when read for inputs)". This commit changes the get value function accordingly. Signed-off-by: Jean-Francois Dagenais <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-01-24Merge branch 'for-linus' of ↵Linus Torvalds41-135/+132
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input Pull input subsystem updates from Dmitry Torokhov: "Just a swath of driver fixes and cleanups, no new drivers this time (although ALPS now supports one of the newer protocols, more to come)" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (57 commits) Input: wacom - add support for DTU-1031 Input: wacom - fix wacom->shared guards for dual input devices Input: edt_ft5x06 - use devm_* functions where appropriate Input: hyperv-keyboard - pass through 0xE1 prefix Input: logips2pp - fix spelling s/reciver/receiver/ Input: delete non-required instances of include <linux/init.h> Input: twl4030-keypad - convert to using managed resources Input: twl6040-vibra - remove unneeded check for CONFIG_OF Input: twl4030-keypad - add device tree support Input: twl6040-vibra - add missing of_node_put Input: twl4030-vibra - add missing of_node_put Input: i8042 - cleanup SERIO_I8042 dependencies Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO on x86 Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO on unicore32 Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO on sparc Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO for SH_CAYMAN Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO on powerpc Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO on mips Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO on IA64 Input: i8042 - select ARCH_MIGHT_HAVE_PC_SERIO on ARM/Footbridge ...
2014-01-06Input: delete non-required instances of include <linux/init.h>Paul Gortmaker31-31/+0
None of these files are actually using any __init type directives and hence don't need to include <linux/init.h>. Most are just a left over from __devinit and __cpuinit removal, or simply due to code getting copied from one driver to the next. Signed-off-by: Paul Gortmaker <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-01-06Input: twl4030-keypad - convert to using managed resourcesDmitry Torokhov1-48/+22
Reviewed-by: Jingoo Han <[email protected]> Tested-by: Sebastian Reichel <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2014-01-04Input: twl4030-keypad - add device tree supportSebastian Reichel1-17/+50
Add device tree support for twl4030 keypad driver. Tested on Nokia N900. Signed-off-by: Sebastian Reichel <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-12-31Input: cros_ec_keyb - fix problems with backslashDoug Anderson1-4/+11
The driver can't deal with two entries its keymap having the same keycode. When this happens it will get confused about whether the key is down or up and will cause some screwy behavior. We need to have two entries for KEY_BACKSLASH to handle US and UK keyboards. Specifically: * On the US keyboard the backslash key (above enter) is r3 c11 and is supposed to be reported as BACKSLASH. * On the UK keyboard the # key (left of enter) is r4 c10 and is supposed to be reported as BACKSLASH. * On the UK keyboard the \ key (left of Z) is r2 c7 and is supposed to be reported as KEY_102ND. Note that both keyboards (US and UK) have only one physical backslash key so the constraint that each physical key should have its own keycode still stands. Signed-off-by: Doug Anderson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-12-26Merge tag 'tegra-for-3.14-dmas-resets-rework' of ↵Olof Johansson1-3/+10
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/cleanup From Stephen Warren: ARM: tegra: implement common DMA and resets DT bindings This series converts the Tegra DTs and drivers to use the common/ standard DMA and reset bindings, rather than custom bindings. It also adds complete documentation for the Tegra clock bindings without actually changing any binding definitions. This conversion relies on a few sets of patches in branches from outside the Tegra tree: 1) A patch to add an DMA channel request API which allows deferred probe to be implemented. 2) A patch to implement a common part of the of_xlate function for DMA controllers. 3) Some ASoC patches (which in turn rely on (1) above), which support deferred probe during DMA channel allocation. 4) The Tegra clock driver changes for 3.14. Consequently, this branch is based on a merge of all of those external branches. In turn, this branch is or will be pulled into a few places that either rely on features introduced here, or would otherwise conflict with the patches: a) Tegra's own for-3.14/powergate and for-4.14/dt branches, to avoid conflicts. b) The DRM tree, which introduces new code that relies on the reset controller framework introduced in this branch, and to avoid conflicts. * tag 'tegra-for-3.14-dmas-resets-rework' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: (30 commits) spi: tegra: checking for ERR_PTR instead of NULL ASoC: tegra: update module reset list for Tegra124 clk: tegra: remove bogus PCIE_XCLK clk: tegra: remove legacy reset APIs ARM: tegra: remove legacy DMA entries from DT ARM: tegra: remove legacy clock entries from DT USB: EHCI: tegra: use reset framework Input: tegra-kbc - use reset framework serial: tegra: convert to standard DMA DT bindings serial: tegra: use reset framework spi: tegra: convert to standard DMA DT bindings spi: tegra: use reset framework staging: nvec: use reset framework i2c: tegra: use reset framework ASoC: tegra: convert to standard DMA DT bindings ASoC: tegra: allocate AHUB FIFO during probe() not startup() ASoC: tegra: call pm_runtime APIs around register accesses ASoC: tegra: use reset framework dma: tegra: register as an OF DMA controller dma: tegra: use reset framework ... Signed-off-by: Olof Johansson <[email protected]>
2013-12-16Merge tag 'v3.13-rc4' into nextDmitry Torokhov4-5/+15
Synchronize with mainline to bring in the new keycode definitions and new hwmon API.
2013-12-11Input: tegra-kbc - use reset frameworkStephen Warren1-3/+10
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: Stephen Warren <[email protected]> Acked-by: Dmitry Torokhov <[email protected]> Reviewed-by: Thierry Reding <[email protected]>
2013-12-07Input: samsung-keypad - favor platform data if presentDmitry Torokhov1-15/+21
We should be able to override firmware-provided parameters with in-kernel data, if needed. To that effect favor platform data, if present, over devicetree data. Acked-by: Joonyoung Shim <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-12-06Input: use dev_get_platdata()Jingoo Han21-29/+37
Use the wrapper function for retrieving the platform data instead of accessing dev->platform_data directly. This is a cosmetic change to make the code simpler and enhance the readability. Signed-off-by: Jingoo Han <[email protected]> Acked-by: Fugang Duan <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-12-05Input: sh_keysc - restrict non-COMPILE_TEST compilationLaurent Pinchart1-1/+1
Hardware supported by the driver is only found on SUPERH or ARCH_SHMOBILE platforms. Restrict non-COMPILE_TEST compilation to them. Signed-off-by: Laurent Pinchart <[email protected]> Acked-by: Simon Horman <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-11-25Input: keyboard - "keycode & KEY_MAX" changes some keycode valuesAndrew Liu3-3/+6
For exmaple, keycode: KEY_OK(0x160) is changed by "and" operation with KEY_MAX(0x2ff) to KEY_KPENTER(96). Signed-off-by: Andrew Liu <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-11-14Merge branch 'next' into for-linusDmitry Torokhov9-38/+43
Merge first round of changes for 3.13 merge window.
2013-11-11Input: tnetv107x-keypad - make irqs signed for error handlingDan Carpenter1-2/+2
There is a bug in keypad_probe() where we do: kp->irq_press = platform_get_irq_byname(pdev, "press"); kp->irq_release = platform_get_irq_byname(pdev, "release"); if (kp->irq_press < 0 || kp->irq_release < 0) { The problem is that these irq variables are unsigned so the error handling doesn't work. I've changed them to signed values. Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-31Input: sh_keysc - enable the driver on all ARM platformsLaurent Pinchart1-1/+1
Renesas ARM platforms are transitioning from single-platform to multi-platform kernels using the new ARCH_SHMOBILE_MULTI. Make the driver available on all ARM platforms to enable it on both ARCH_SHMOBILE and ARCH_SHMOBILE_MULTI, and increase build testing coverage with COMPILE_TEST. Signed-off-by: Laurent Pinchart <[email protected]> Acked-by: Simon Horman <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-31Input: allow deselecting serio drivers even without CONFIG_EXPERTTom Gundersen1-2/+2
There is plenty of consumer hardware (e.g., mac books) that does not use AT keyboards or PS/2 mice. It therefore makes sense for distro kernels to build the related drivers as modules to avoid loading them on hardware that does not need them. As such, these options should no longer be protected by EXPERT. Moreover, building these drivers as modules gets rid of the following ugly error during boot: [ 2.337745] i8042: PNP: No PS/2 controller found. Probing ports directly. [ 3.439537] i8042: No controller found Signed-off-by: Tom Gundersen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-15Input: nspire-keypad - add missing clk_disable_unprepare() on error pathWei Yongjun1-1/+3
Add the missing clk_disable_unprepare() before return from nspire_keypad_open() in the error handling case. Signed-off-by: Wei Yongjun <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-08Merge tag 'v3.12-rc4' into nextDmitry Torokhov1-2/+2
Merge with mainline to bring in changes to input subsystem that were committed through other trees.
2013-10-06Input: pxa27x_keypad - include linux/of.h headerSachin Kamat1-0/+1
'of_match_ptr' is defined in linux/of.h. Include it explicitly. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-06Input: gpio_keys_polled - include linux/of.h headerSachin Kamat1-0/+1
'of_match_ptr' is defined in linux/of.h. Include it explicitly. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-06Input: gpio_keys - include linux/of.h headerSachin Kamat1-0/+1
'of_match_ptr' is defined in linux/of.h. Include it explicitly. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-06Input: tegra-kbc - remove redundant of_match_ptrSachin Kamat1-1/+1
The data structure of_match_ptr() protects is always compiled in. Hence of_match_ptr() is not needed. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-06Input: nspire-keypad - remove redundant of_match_ptrSachin Kamat1-1/+1
The data structure of_match_ptr() protects is always compiled in. Hence of_match_ptr() is not needed. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-10-06Input: lpc32xx-keys - remove redundant of_match_ptrSachin Kamat1-1/+1
The data structure of_match_ptr() protects is always compiled in. Hence of_match_ptr() is not needed. Signed-off-by: Sachin Kamat <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-09-18Input: pxa27x_keypad - fix NULL pointer dereferenceMike Dunn1-2/+9
A NULL pointer dereference exception occurs in the driver probe function when device tree is used. The pdata pointer will be NULL in this case, but the code dereferences it in all cases. When device tree is used, a platform data structure is allocated and initialized, and in all cases this pointer is copied to the driver's private data, so the variable being tested should be accessed through the driver's private data structure. Signed-off-by: Mike Dunn <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-09-18Merge tag 'v3.11' into nextDmitry Torokhov3-77/+30
Merge with mainline to bring in sync changes to cyttsp4 driver.
2013-09-13Remove GENERIC_HARDIRQ config optionMartin Schwidefsky1-2/+2
After the last architecture switched to generic hard irqs the config options HAVE_GENERIC_HARDIRQS & GENERIC_HARDIRQS and the related code for !CONFIG_GENERIC_HARDIRQS can be removed. Signed-off-by: Martin Schwidefsky <[email protected]>
2013-09-07Merge branch 'for-linus' of ↵Linus Torvalds7-49/+103
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input Pull input updates from Dmitry Torokhov: "A new driver for slidebar on Ideapad laptops and a bunch of assorted driver fixes" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (32 commits) Input: add SYN_MAX and SYN_CNT constants Input: max11801_ts - convert to devm Input: egalax-ts - fix typo and improve text Input: MAINTAINERS - change maintainer for cyttsp driver Input: cyttsp4 - kill 'defined but not used' compiler warnings Input: add driver for slidebar on Lenovo IdeaPad laptops Input: omap-keypad - set up irq type from DT Input: omap-keypad - enable wakeup capability for keypad. Input: omap-keypad - clear interrupts on open Input: omap-keypad - convert to threaded IRQ Input: omap-keypad - use bitfiled instead of hardcoded values Input: cyttsp4 - remove useless NULL test from cyttsp4_watchdog_timer() Input: wacom - fix error return code in wacom_probe() Input: as5011 - fix error return code in as5011_probe() Input: keyboard, serio - simplify use of devm_ioremap_resource Input: tegra-kbc - simplify use of devm_ioremap_resource Input: htcpen - fix incorrect placement of __initdata Input: qt1070 - add power management ops Input: wistron_btns - add MODULE_DEVICE_TABLE Input: wistron_btns - mark the Medion MD96500 keymap as tested ...
2013-09-06Merge branch 'next' into for-linusDmitry Torokhov7-49/+103
Merge first round of changes for 3.12 merge window.