- 21 7月, 2010 1 次提交
-
-
由 Joonyoung Shim 提交于
This patch adds support for keypad driver running on Samsung cpus. This driver is tested on GONI and Aquila board using S5PC110 cpu. [ch.naveen@samsung.com: tested on SMDK6410, SMDKC100, and SMDKV210] Signed-off-by: NJoonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Tested-by: NNaveen Krishna Ch <ch.naveen@samsung.com> Acked-by: NKukjin Kim <kgene.kim@samsung.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 04 7月, 2010 1 次提交
-
-
由 Joonyoung Shim 提交于
This adds support for MELPAS MCS5000/MSC5080 touch key controllers. Signed-off-by: NJoonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 29 6月, 2010 2 次提交
-
-
由 Dan Carpenter 提交于
We reuse the "i" variable later on so if we goto fail3 or fail4 then "i" will be set to the wrong thing and cause a crash. Signed-off-by: NDan Carpenter <error27@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Grazvydas Ignotas 提交于
gpiolib now has debounce support added in .35, so let's make use of it. This allows to use hardware GPIO debouncing on some platforms like OMAP. In case gpiolib debounce setup fails for some GPIO, the driver will fall back to timer based debouncing, which is what it used before. Signed-off-by: NGrazvydas Ignotas <notasas@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 25 6月, 2010 1 次提交
-
-
由 Xiaolong CHEN 提交于
A column or row configured as a GPI can be programmed to be part of the key event table and therefore also capable of generating a key event interrupt. A key event interrupt caused by a GPI follows the same process flow as a key event interrupt caused by a key press. GPIs configured as part of the key event table allow single key switches and other GPI interrupts to be monitored. As part of the event table, GPIs are represented by the decimal value 97 (0x61 or 1100001) through the decimal value 114 (0x72 or 1110010). See table below for GPI event number assignments for rows and columns. GPI Event Number Assignments for Rows Row0 Row1 Row2 Row3 Row4 Row5 Row6 Row7 97 98 99 100 101 102 103 104 GPI Event Number Assignments for Cols Col0 Col1 Col2 Col3 Col4 Col5 Col6 Col7 Col8 Col9 105 106 107 108 109 110 111 112 113 114 Signed-off-by: NXiaolong Chen <xiao-long.chen@motorola.com> Signed-off-by: NYuanbo Ye <yuan-bo.ye@motorola.com> Signed-off-by: NTao Hu <taohu@motorola.com> Acked-by: NMichael Hennerich <michael.hennerich@analog.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 11 6月, 2010 1 次提交
-
-
由 Luotao Fu 提交于
This one adds support of a combined irq source for the whole matrix keypad. This can be useful if all rows and columns of the keypad are e.g. connected to a GPIO expander, which only has one interrupt line for all events on every single GPIO. Signed-off-by: NLuotao Fu <l.fu@pengutronix.de> Acked-by: NEric Miao <eric.y.miao@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 03 6月, 2010 1 次提交
-
-
由 Wolfram Sang 提交于
I2C drivers can use the clientdata-pointer to point to private data. As I2C devices are not really unregistered, but merely detached from their driver, it used to be the drivers obligation to clear this pointer during remove() or a failed probe(). As a couple of drivers forgot to do this, it was agreed that it was cleaner if the i2c-core does this clearance when appropriate, as there is no guarantee for the lifetime of the clientdata-pointer after remove() anyhow. This feature was added to the core with commit e4a7b9b0 to fix the faulty drivers. As there is no need anymore to clear the clientdata-pointer, remove all current occurrences in the drivers to simplify the code and prevent confusion. Signed-off-by: NWolfram Sang <w.sang@pengutronix.de> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Acked-by: NRichard Purdie <rpurdie@linux.intel.com> Acked-by: NDmitry Torokhov <dtor@mail.ru> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
- 27 5月, 2010 1 次提交
-
-
由 Geert Uytterhoeven 提交于
Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org>
-
- 20 5月, 2010 1 次提交
-
-
由 Jacob Pan 提交于
Moorestown does not have i8042 based keyboard controller, so give an option to deselect i8042 for non-pc mid. Signed-off-by: NJacob Pan <jacob.jun.pan@linux.intel.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 11 5月, 2010 2 次提交
-
-
由 Eric Miao 提交于
Signed-off-by: NEric Miao <eric.y.miao@gmail.com>
-
由 Eric Miao 提交于
Tosa is now able to use generic matrix keypad driver instead of the deprecated tosakbd.c, where CONFIG_KEYBOARD_TOSA_USE_EXT_KEYCODES is still useful. Move it to mach/Kconfig. Signed-off-by: NEric Miao <eric.y.miao@gmail.com>
-
- 04 5月, 2010 2 次提交
-
-
This patch implements a simple Keypad driver that functions as an I2C client. It handles key press events for keys connected to TCA6416 I2C based IO expander. Signed-off-by: NSriramakrishnan <srk@ti.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Eric Miao 提交于
Signed-off-by: NEric Miao <eric.y.miao@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 14 4月, 2010 1 次提交
-
-
由 Wolfram Sang 提交于
Do not leave dangling client data pointers when unbinding device from the driver or when binding fails for some reason. Signed-off-by: NWolfram Sang <w.sang@pengutronix.de> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 06 4月, 2010 1 次提交
-
-
由 H Hartley Sweeten 提交于
In an embedded system the matrix_keypad driver might be used to interface with an external control panel and not an actual keyboard. On the control panel some of the keys could be used to turn on/off various functions. If key autorepeat is enabled this causes the function to quickly toggle between the on and off states and makes operation difficult. Add an option in the platform-specific data to disable the key autorepeat. Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 30 3月, 2010 1 次提交
-
-
由 Tejun Heo 提交于
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h percpu.h is included by sched.h and module.h and thus ends up being included when building most .c files. percpu.h includes slab.h which in turn includes gfp.h making everything defined by the two files universally available and complicating inclusion dependencies. percpu.h -> slab.h dependency is about to be removed. Prepare for this change by updating users of gfp and slab facilities include those headers directly instead of assuming availability. As this conversion needs to touch large number of source files, the following script is used as the basis of conversion. http://userweb.kernel.org/~tj/misc/slabh-sweep.py The script does the followings. * Scan files for gfp and slab usages and update includes such that only the necessary includes are there. ie. if only gfp is used, gfp.h, if slab is used, slab.h. * When the script inserts a new include, it looks at the include blocks and try to put the new include such that its order conforms to its surrounding. It's put in the include block which contains core kernel includes, in the same order that the rest are ordered - alphabetical, Christmas tree, rev-Xmas-tree or at the end if there doesn't seem to be any matching order. * If the script can't find a place to put a new include (mostly because the file doesn't have fitting include block), it prints out an error message indicating which .h file needs to be added to the file. The conversion was done in the following steps. 1. The initial automatic conversion of all .c files updated slightly over 4000 files, deleting around 700 includes and adding ~480 gfp.h and ~3000 slab.h inclusions. The script emitted errors for ~400 files. 2. Each error was manually checked. Some didn't need the inclusion, some needed manual addition while adding it to implementation .h or embedding .c file was more appropriate for others. This step added inclusions to around 150 files. 3. The script was run again and the output was compared to the edits from #2 to make sure no file was left behind. 4. Several build tests were done and a couple of problems were fixed. e.g. lib/decompress_*.c used malloc/free() wrappers around slab APIs requiring slab.h to be added manually. 5. The script was run on all .h files but without automatically editing them as sprinkling gfp.h and slab.h inclusions around .h files could easily lead to inclusion dependency hell. Most gfp.h inclusion directives were ignored as stuff from gfp.h was usually wildly available and often used in preprocessor macros. Each slab.h inclusion directive was examined and added manually as necessary. 6. percpu.h was updated not to include slab.h. 7. Build test were done on the following configurations and failures were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my distributed build env didn't work with gcov compiles) and a few more options had to be turned off depending on archs to make things build (like ipr on powerpc/64 which failed due to missing writeq). * x86 and x86_64 UP and SMP allmodconfig and a custom test config. * powerpc and powerpc64 SMP allmodconfig * sparc and sparc64 SMP allmodconfig * ia64 SMP allmodconfig * s390 SMP allmodconfig * alpha SMP allmodconfig * um on x86_64 SMP allmodconfig 8. percpu.h modifications were reverted so that it could be applied as a separate patch and serve as bisection point. Given the fact that I had only a couple of failures from tests on step 6, I'm fairly confident about the coverage of this conversion patch. If there is a breakage, it's likely to be something in one of the arch headers which should be easily discoverable easily on most builds of the specific arch. Signed-off-by: NTejun Heo <tj@kernel.org> Guess-its-ok-by: NChristoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
-
- 10 3月, 2010 1 次提交
-
-
由 Mike Frysinger 提交于
We need to use the nosync version of disable_irq so that we don't hang in the IRQ handler as we don't ACK the interrupt until later. This used to work regardless, but at some point, the IRQ behavior changed. Not sure when exactly. Signed-off-by: NMike Frysinger <vapier@gentoo.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 02 3月, 2010 1 次提交
-
-
由 Eric Miao 提交于
It is not necessary and is over-complicated for IRQ_LOCOMO_KEY to be a cascaded IRQ of IRQ_LOCOMO_KEY_BASE. Removed and introduced locomokbd_{open,close} for masking/unmasking of the keyboard IRQ. Signed-off-by: NEric Miao <eric.y.miao@gmail.com>
-
- 26 2月, 2010 1 次提交
-
-
由 Dmitry Torokhov 提交于
Keycodes in 248 - 254 range were reserved for special needs (scrolling) of atkbd driver. Now that the driver has been switched to use unsigned short keycodes instead of unsigned char we can release this range back into pull. We keep code 255 (ATKBD_KEY_NULL) reserved since users may have been using it to silence keys they do not care about since atkbd silently drops scancodes mapped to this keycode. Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 17 2月, 2010 1 次提交
-
-
由 Magnus Damm 提交于
Update the Kconfig entry for the sh_keysc driver to enable build on SH-Mobile ARM platforms. Signed-off-by: NMagnus Damm <damm@opensource.se> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 11 2月, 2010 4 次提交
-
-
由 Magnus Damm 提交于
Add mode 6 support to the sh_keysc driver. Also update the KYOUTDR mask value to include all 16 register bits. Signed-off-by: NMagnus Damm <damm@opensource.se> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Magnus Damm 提交于
Use bitmaps instead of using 32-bit integers to keep track of the key states. With this change in place the driver supports key pads with more than 32 keys. Signed-off-by: NMagnus Damm <damm@opensource.se> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Magnus Damm 提交于
Update the sh_keysc driver to factor out the register access functions sh_keysc_read(), sh_keysc_write() together with sh_keysc_level_mode(). This makes the code a bit easier to follow. Signed-off-by: NMagnus Damm <damm@opensource.se> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Eric Miao 提交于
Provided that now keyboards on these devices are fully supported by generic GPIO based matrix keypad driver, mark these hardcoded and difficult to maintain drivers as deprecated. Signed-off-by: NEric Miao <eric.y.miao@gmail.com> Acked-by: NPavel Machek <pavel@ucw.cz> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 04 2月, 2010 1 次提交
-
-
由 Mika Westerberg 提交于
Now gpio-keys input driver exports 4 new attributes to userland through sysfs: /sys/devices/platform/gpio-keys/keys [ro] /sys/devices/platform/gpio-keys/switches [ro] /sys/devices/platform/gpio-keys/disabled_keys [rw] /sys/devices/platform/gpio-keys/disables_switches [rw] With these attributes, userland program can read which keys and switches can be disabled and then disable/enable them as needed. Keys and switches are exported as stringified bitmap of codes (keycodes or switch codes). For example keys 15, 89, 100, 101, 102 are exported as: '15,89,100-102'. Description of the attributes: keys - bitmap of keys which can be disabled switches - bitmap of switches which can be disabled disabled_keys - bitmap of currently disabled keys (bit 1 means disabled, 0 enabled) disabled_switches - bitmap of currently disabled switches (bit 1 means disabled, 0 enabled) Signed-off-by: NMika Westerberg <ext-mika.1.westerberg@nokia.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 01 2月, 2010 1 次提交
-
-
由 Alberto Panizzo 提交于
The IMX family of Application Processors is shipped with a Keypad Port supported by this driver. The peripheral can control up to an 8x8 matrix key pad where all the scanning is done via software. The hardware provides two interrupts: one for key presses (KDI) and one for all key releases (KRI). There is also a simple circuit for glitch reduction (said for synchronization) made by two series of 3 D-latches clocked by the keypad-clock that stabilize the interrupts sources. KDI and KRI are fired only if the respective conditions are maintained for at last 4 keypad-clock cycle. Since those circuits are poor for a correct debounce process (the keypad-clock frequency is 32K and bounces longer than 94us are not masked) the driver, when an interrupt arrives, samples the matrix with a period of 10ms until the readins are stable for IMX_KEYPAD_SCANS_FOR_STABILITY times (currently set at 3). After getting stable result appropriate events are sent through the input stack. If some keys are maintained pressed, the driver continues to scan the matrix with a longer period (60ms) to catch possible multiple key presses without overloading the cpu. This process ends when all keys are released. This driver is tested to build in kernel or as a module and follow the specification of Freescale Application processors: i.MX25 i.MX27 i.MX31 i.MX35 i.MX51 especially tested on i.MX31. Signed-off-by: NAlberto Panizzo <maramaopercheseimorto@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 21 1月, 2010 1 次提交
-
-
由 Magnus Damm 提交于
Add Mode 4 and Mode 5 support to the SH_KEYSC driver. These modes allow slightly larger key pad matrixes. While at it, make use of resource_size(). Signed-off-by: NMagnus Damm <damm@opensource.se> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 19 1月, 2010 1 次提交
-
-
由 Michael Hennerich 提交于
The ADP5587 is quite similar to the ADP5588 but features a greater I/O voltage range and lacks the Dual Light Sensor Interface. This new part is also supported by this driver. Signed-off-by: NMichael Hennerich <michael.hennerich@analog.com> Signed-off-by: NMike Frysinger <vapier@gentoo.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 13 1月, 2010 1 次提交
-
-
由 H Hartley Sweeten 提交于
Use struct matrix_keymap_data to supply the keymap from the platform code and matrix_keypad_build_keymap() to initialize the keymap. Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 10 1月, 2010 1 次提交
-
-
由 Márton Németh 提交于
The id_table field of the struct i2c_driver is defined as constant in <linux/i2c.h> so it makes sense to mark the initialization data also constant. Signed-off-by: NMárton Németh <nm127@freemail.hu> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 07 1月, 2010 1 次提交
-
-
由 Dmitry Torokhov 提交于
dev_err(), dev_warn() and dev_dbg() ensure consistency in driver messages. Also switch to using bool where appropriate and fix some formatting issues. Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 06 1月, 2010 3 次提交
-
-
由 Miguel Aguilar 提交于
Add a function pointer in the platform data of the DaVinci Keyscan driver called device_enable, in order to perform board specific actions when the device is initialized, like setup the PINMUX configuration. Signed-off-by: NMiguel Aguilar <miguel.aguilar@ridgerun.com> Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Dmitry Torokhov 提交于
We need to first unregister input device and only then cancel event work since events can arrive (and cause event work to get scheduled again) until input_unregister_device() returns. Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Eric W. Biederman 提交于
sysfs_remove_group() waits for sysfs attributes to be removed, therefore we do not need to worry about driver-specific attributes being accessed after driver has been detached from the device. In fact, attempts to take serio->drv_mutex in attribute methods may lead to the following deadlock: sysfs_read_file() fill_read_buffer() sysfs_get_active_two() psmouse_attr_show_helper() serio_pin_driver() serio_disconnect_driver() mutex_lock(&serio->drv_mutex); <--------> mutex_lock(&serio_drv_mutex); psmouse_disconnect() sysfs_remove_group(... psmouse_attr_group); .... sysfs_deactivate(); wait_for_completion(); Fix this by removing calls to serio_[un]pin_driver() and functions themselves and using driver-private mutexes to serialize access to attribute's set() methods that may change device state. Signed-off-by: NEric W. Biederman <ebiederm@xmission.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 30 12月, 2009 1 次提交
-
-
由 Felipe Balbi 提交于
Signed-off-by: NFelipe Balbi <felipe.balbi@nokia.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 25 12月, 2009 2 次提交
-
-
由 Dmitry Torokhov 提交于
On certain boards not all GPIOs may be used as wakeup sources, in which case some of enable_irq_wake() calls will fail. On resume calling disable_irq_wake() will warn about unbalanced IRQ wake disable. Solve this by checking whether enable_irq_wake() succeeded or not and no not call disable_irq_wake() for these GPIOs/IRQs that have not been enabled. Reported-by: NPavel Machek <pavel@ucw.cz> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Dmitry Torokhov 提交于
Instead of doing full-blown reset while suspending or shutting down the box use lighter form of reset that should take less time. Tested-by: NAlan Stern <stern@rowland.harvard.edu> Tested-by: NRafael J. Wysocki <rjw@sisk.pl> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 16 12月, 2009 2 次提交
-
-
由 H Hartley Sweeten 提交于
This driver was merged before the ep93xx core support was added for the keypad clock and acquiring/releasing the necessary gpio's. Now that the proper support is in the ep93xx core this driver needs to be updated to work correctly. Summary of changes: 1) Remove some unused members from the platform data. 2) Remove the custom KEY macro and use the ones available in <linux/input/matrix_keypad.h> 3) Remove the keypad_{readl/writel} macros and just use __raw_{readl/writel} directly. 4) Update the clk_set_rate() call to work with the core support. 5) Cleanup the probe routine and remove some unneeded messages. 6) Use the ep93xx core functions to acquire and release the gpio's. 7) Fix the clk_get() call to get the keypad clock. Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Alexey Dobriyan 提交于
Signed-off-by: NAlexey Dobriyan <adobriyan@gmail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 14 12月, 2009 1 次提交
-
-
由 Balaji T K 提交于
This patch renames function names like twl4030_i2c_write_u8, twl4030_i2c_read_u8 to twl_i2c_write_u8, twl_i2c_read_u8 and also common variable in twl-core.c Signed-off-by: NRajendra Nayak <rnayak@ti.com> Signed-off-by: NBalaji T K <balajitk@ti.com> Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: NKevin Hilman <khilman@deeprootsystems.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-