aboutsummaryrefslogtreecommitdiff
path: root/drivers/input
AgeCommit message (Collapse)AuthorFilesLines
2010-08-05Merge branch 'upstream/xen' of ↵Linus Torvalds1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen * 'upstream/xen' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen: (23 commits) xen/panic: use xen_reboot and fix smp_send_stop Xen: register panic notifier to take crashes of xen guests on panic xen: support large numbers of CPUs with vcpu info placement xen: drop xen_sched_clock in favour of using plain wallclock time pvops: do not notify callers from register_xenstore_notifier Introduce CONFIG_XEN_PVHVM compile option blkfront: do not create a PV cdrom device if xen_hvm_guest support multiple .discard.* sections to avoid section type conflicts xen/pvhvm: fix build problem when !CONFIG_XEN xenfs: enable for HVM domains too x86: Call HVMOP_pagetable_dying on exit_mmap. x86: Unplug emulated disks and nics. x86: Use xen_vcpuop_clockevent, xen_clocksource and xen wallclock. implement O_NONBLOCK for /proc/xen/xenbus xen: Fix find_unbound_irq in presence of ioapic irqs. xen: Add suspend/resume support for PV on HVM guests. xen: Xen PCI platform device driver. x86/xen: event channels delivery on HVM. x86: early PV on HVM features initialization. xen: Add support for HVM hypercalls. ...
2010-08-05Input: adxl34x - do not mark device as disabled on startupMichael Hennerich1-1/+0
Do not mark device as desabled on startup - otherwise user must reset disable sysfs hook before the driver delivers any data. Signed-off-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-05Merge branch 'next' of ↵Linus Torvalds1-0/+5
git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (79 commits) powerpc/8xx: Add support for the MPC8xx based boards from TQC powerpc/85xx: Introduce support for the Freescale P1022DS reference board powerpc/85xx: Adding DTS for the STx GP3-SSA MPC8555 board powerpc/85xx: Change deprecated binding for 85xx-based boards powerpc/tqm85xx: add a quirk for ti1520 PCMCIA bridge powerpc/tqm85xx: update PCI interrupt-map attribute powerpc/mpc8308rdb: support for MPC8308RDB board from Freescale powerpc/fsl_pci: add quirk for mpc8308 pcie bridge powerpc/85xx: Cleanup QE initialization for MPC85xxMDS boards powerpc/85xx: Fix booting for P1021MDS boards powerpc/85xx: Fix SWIOTLB initalization for MPC85xxMDS boards powerpc/85xx: kexec for SMP 85xx BookE systems powerpc/5200/i2c: improve i2c bus error recovery of/xilinxfb: update tft compatible versions powerpc/fsl-diu-fb: Support setting display mode using EDID powerpc/5121: doc/dts-bindings: update doc of FSL DIU bindings powerpc/5121: shared DIU framebuffer support powerpc/5121: move fsl-diu-fb.h to include/linux powerpc/5121: fsl-diu-fb: fix issue with re-enabling DIU area descriptor powerpc/512x: add clock structure for Video-IN (VIU) unit ...
2010-08-04Merge branch 'for-next' of ↵Linus Torvalds1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits) Documentation: update broken web addresses. fix comment typo "choosed" -> "chosen" hostap:hostap_hw.c Fix typo in comment Fix spelling contorller -> controller in comments Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -> Fault fs/Kconfig: Fix typo Userpace -> Userspace Removing dead MACH_U300_BS26 drivers/infiniband: Remove unnecessary casts of private_data fs/ocfs2: Remove unnecessary casts of private_data libfc: use ARRAY_SIZE scsi: bfa: use ARRAY_SIZE drm: i915: use ARRAY_SIZE drm: drm_edid: use ARRAY_SIZE synclink: use ARRAY_SIZE block: cciss: use ARRAY_SIZE comment typo fixes: charater => character fix comment typos concerning "challenge" arm: plat-spear: fix typo in kerneldoc reiserfs: typo comment fix update email address ...
2010-08-04Merge branch 'upstream/pvhvm' into upstream/xenJeremy Fitzhardinge1-1/+1
* upstream/pvhvm: Introduce CONFIG_XEN_PVHVM compile option blkfront: do not create a PV cdrom device if xen_hvm_guest support multiple .discard.* sections to avoid section type conflicts xen/pvhvm: fix build problem when !CONFIG_XEN xenfs: enable for HVM domains too x86: Call HVMOP_pagetable_dying on exit_mmap. x86: Unplug emulated disks and nics. x86: Use xen_vcpuop_clockevent, xen_clocksource and xen wallclock. xen: Fix find_unbound_irq in presence of ioapic irqs. xen: Add suspend/resume support for PV on HVM guests. xen: Xen PCI platform device driver. x86/xen: event channels delivery on HVM. x86: early PV on HVM features initialization. xen: Add support for HVM hypercalls. Conflicts: arch/x86/xen/enlighten.c arch/x86/xen/time.c
2010-08-04Merge branch 'for-linus' of ↵Linus Torvalds41-885/+5761
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: (57 commits) Input: adp5588-keypad - fix NULL dereference in adp5588_gpio_add() Input: cy8ctmg110 - capacitive touchscreen support Input: keyboard - also match braille-only keyboards Input: adp5588-keys - export unused GPIO pins Input: xpad - add product ID for Hori Fighting Stick EX2 Input: adxl34x - fix leak and use after free Input: samsung-keypad - Add samsung keypad driver Input: i8042 - reset keyboard controller wehen resuming from S2R Input: synaptics - set min/max for finger width Input: synaptics - only report width on hardware that supports it Input: evdev - signal that device is writable in evdev_poll() Input: mousedev - signal that device is writable in mousedev_poll() Input: change input handlers to use bool when possible Input: document the MT event slot protocol Input: introduce MT event slots Input: usbtouchscreen - implement reset_resume Input: usbtouchscreen - implement runtime power management Input: usbtouchscreen - implement basic suspend/resume Input: Add ATMEL QT602240 touchscreen driver Input: fix signedness warning in input_set_keycode() ...
2010-08-04Merge branch 'master' into for-nextJiri Kosina12-21/+57
2010-08-03Input: gpio_keys - add hooks to enable/disable deviceShubhrajyoti D1-0/+22
Allow platform code to specify callbcks that will be invoked when input device is opened or closed, allowing, for example, to enable the device. Signed-off-by: Shubhrajyoti D <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-04Merge commit 'gcl/next' into nextBenjamin Herrenschmidt10-18/+46
2010-08-02Input: evdev - rearrange ioctl handlingDmitry Torokhov1-68/+73
Split ioctl handling into 3 separate sections: fixed-length ioctls, variable-length ioctls and multi-number variable length handlers. This reduces identation and makes the code a bit clearer. Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-02Input: dynamically allocate ABS informationDaniel Mack2-18/+45
As all callers are now changed to only use the input_abs_*() access helpers, switching over to dynamically allocated ABS information is easy. This reduces size of struct input_dev from 3152 to 1640 on 64 bit architectures. Signed-off-by: Daniel Mack <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-02Input: switch to input_abs_*() access functionsDaniel Mack16-114/+129
Change all call sites in drivers/input to not access the ABS axis information directly anymore. Make them use the access helpers instead. Also use input_set_abs_params() when possible. Did some code refactoring as I was on it. Signed-off-by: Daniel Mack <[email protected]> Cc: Dmitry Torokhov <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-02Merge branch 'next' into for-linusDmitry Torokhov41-885/+5760
2010-08-02Input: adp5588-keypad - fix NULL dereference in adp5588_gpio_add()Dmitry Torokhov1-29/+37
The kpad structure is assigned to i2c client via i2s_set_clientdata() at the end of adp5588_probe(), but in adp5588_gpio_add() we tried to access it (via dev_get_drvdata! which is not nice at all) causing an oops. Let's pass pointer to kpad directly into adp5588_gpio_add() and adp5588_gpio_remove() to avoid accessing driver data before it is set up. Also split out building of gpiomap into a separate function to clear the logic. Reported-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-31Input: cy8ctmg110 - capacitive touchscreen supportSamuli Konttila3-1/+379
Add support for the cy8ctmg110 capacitive touchscreen used on some embedded devices. (Some clean up by Alan Cox) Signed-off-by: Alan Cox <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-29ixp4xx-beeper: Use IRQF_NO_SUSPEND not IRQF_TIMER for non-timer interruptIan Campbell1-1/+2
ixp4xx_spkr_interrupt is not a timer interrupt and therefore should not use IRQF_TIMER. Use the recently introduced IRQF_NO_SUSPEND instead since that is the actual desired behaviour. Signed-off-by: Ian Campbell <[email protected]> Cc: Dmitry Torokhov <[email protected]> Cc: [email protected] LKML-Reference: <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
2010-07-26Input: adp5588-keys - export unused GPIO pinsXiaolong Chen1-2/+207
This patch allows exporting GPIO pins not used by the keypad itself to be accessible from elsewhere. Signed-off-by: Xiaolong Chen <[email protected]> Signed-off-by: Yuanbo Ye <[email protected]> Signed-off-by: Tao Hu <[email protected]> Acked-by: Michael Hennerich <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-26Input: xpad - add product ID for Hori Fighting Stick EX2Chris Merrett1-0/+1
Signed-off-by: Chris Merrett <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-24of/platform: remove all of_bus_type and of_platform_bus_type referencesGrant Likely2-10/+7
Both of_bus_type and of_platform_bus_type are just #define aliases for the platform bus. This patch removes all references to them and switches to the of_register_platform_driver()/of_unregister_platform_driver() API for registering. Subsequent patches will convert each user of of_register_platform_driver() into plain platform_drivers without the of_platform_driver shim. At which point the of_register_platform_driver()/of_unregister_platform_driver() functions can be removed. Signed-off-by: Grant Likely <[email protected]> Acked-by: David S. Miller <[email protected]>
2010-07-24Merge commit 'v2.6.35-rc6' into devicetree/nextGrant Likely12-21/+57
Conflicts: arch/sparc/kernel/prom_64.c
2010-07-22Input: adxl34x - fix leak and use after freeDan Carpenter1-4/+3
These are a couple smatch issues. In the original code, if only one of the allocation fails we leak the other variable so we should goto out_free_mem. Also there was a use after free if debugging was enabled and so I moved the kfree() down a line. Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-22x86: early PV on HVM features initialization.Sheng Yang1-1/+1
Initialize basic pv on hvm features adding a new Xen HVM specific hypervisor_x86 structure. Don't try to initialize xen-kbdfront and xen-fbfront when running on HVM because the backends are not available. Signed-off-by: Stefano Stabellini <[email protected]> Signed-off-by: Sheng Yang <[email protected]> Signed-off-by: Yaozu (Eddie) Dong <[email protected]> Signed-off-by: Jeremy Fitzhardinge <[email protected]>
2010-07-22Merge branch 'for-linus' of ↵Linus Torvalds7-13/+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: synaptics - relax capability ID checks on newer hardware Input: twl40300-keypad - fix handling of "all ground" rows Input: gamecon - reference correct pad in gc_psx_command() Input: gamecon - reference correct input device in NES mode Input: w90p910_keypad - change platfrom driver name to 'nuc900-kpi' Input: i8042 - add Gigabyte Spring Peak to dmi_noloop_table Input: qt2160 - rename kconfig symbol name
2010-07-21Input: synaptics - relax capability ID checks on newer hardwareDmitry Torokhov2-2/+8
Older firmwares fixed the middle byte of the Synaptics capabilities query to 0x47, but starting with firmware 7.5 the middle byte represents submodel ID, sometimes also called "dash number". Reported-and-tested-by: Miroslav Šulc <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-21Input: samsung-keypad - Add samsung keypad driverJoonyoung Shim3-0/+501
This patch adds support for keypad driver running on Samsung cpus. This driver is tested on GONI and Aquila board using S5PC110 cpu. [[email protected]: tested on SMDK6410, SMDKC100, and SMDKV210] Signed-off-by: Joonyoung Shim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Tested-by: Naveen Krishna Ch <[email protected]> Acked-by: Kukjin Kim <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-20Input: i8042 - reset keyboard controller wehen resuming from S2RDmitry Torokhov1-24/+41
Some laptops, such as Lenovo 3000 N100, require keyboard controller reset in order to have touchpad operable after suspend to RAM. Even if box does not need the reset it should be safe to do so, so instead of chasing after misbehaving boxes and grow DMI tables, let's reset the controller unconditionally. Reported-and-tested-by: Jerome Lacoste <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-20Input: twl40300-keypad - fix handling of "all ground" rowsDmitry Torokhov1-6/+11
The Nokia RX51 board code (arch/arm/mach-omap2/board-rx51-peripherals.c) defines a key map for the matrix keypad keyboard. The hardware seems to use all of the 8 rows and 8 columns of the keypad, although not all possible locations are used. The TWL4030 supports keypads with at most 8 rows and 8 columns. Most keys are defined with a row and column number between 0 and 7, except KEY(0xff, 2, KEY_F9), KEY(0xff, 4, KEY_F10), KEY(0xff, 5, KEY_F11), which represent keycodes that should be emitted when entire row is connected to the ground. since the driver handles this case as if we had an extra column in the key matrix. Unfortunately we do not allocate enough space and end up owerwriting some random memory. Reported-and-tested-by: Laurent Pinchart <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-20Input: gamecon - reference correct pad in gc_psx_command()Dmitry Torokhov1-1/+1
Otherwise we won't see any events from the gamepad. Addresses https://bugzilla.kernel.org/show_bug.cgi?id=16408 Reported-and-tested-by: Eugene Yudin <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-20Input: gamecon - reference correct input device in NES modeDmitry Torokhov1-2/+1
We moved input devices from 'struct gc' to individial pads (struct gc-pad), but gc_nes_process_packet() was still trying to use old ones and crashing. Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-19Input: synaptics - set min/max for finger widthChris Bagwell1-1/+1
Reporting this will allow GUI config apps to correctly scale width sensitive config values (such as palm detect) to correct range. Current user apps are detecting kernels min/max=0/0 and making an assumption that it means 0/16 or 0/15. Synaptics touchpad interface guides show 4/15 are correct values but driver forces to 0 when no fingers on touchpad. Signed-off-by: Chris Bagwell <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-19Input: synaptics - only report width on hardware that supports itChris Bagwell1-2/+6
Synaptics devices report fixed value of 5 for finger/palm widths on devices that do not support capability and driver further hardcodes to 5. Stop reporting this fixed value when its not supported since its not useful. This will aid applications so they can better auto-enable support for multi-touch emulation and palm detection logic using finger width only for devices that support width detection. I can find no applications that currently require existence on ABS_TOOL_WIDTH. Since only synaptics and bcm input devices currently support this tool, it seems they must handle it gracefully. Signed-off-by: Chris Bagwell <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-19Input: w90p910_keypad - change platfrom driver name to 'nuc900-kpi'Wan ZongShun1-1/+1
The name of platfrom device was changed and we need to make driver's name match in order for it to bind to the device. Signed-off-by: Wan ZongShun <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-19Input: i8042 - add Gigabyte Spring Peak to dmi_noloop_tableKamal Mostafa1-0/+7
Gigabyte "Spring Peak" notebook indicates wrong chassis-type, tripping up i8042 and breaking the touchpad. Add this model to i8042_dmi_noloop_table[] to resolve. BugLink: https://bugs.launchpad.net/bugs/580664 Signed-off-by: Kamal Mostafa <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-17Input: qt2160 - rename kconfig symbol nameChristoph Fritz1-1/+1
drivers/input/keyboard/Kconfig defines QT2160 while the corresponding Makefile expects CONFIG_KEYBOARD_QT2160 as all other keyboard drivers do. To keep this Makefile consistent rename the config-token from CONFIG_QT2160 to CONFIG_KEYBOARD_QT2160. The various defconfig files are left alone. Reported-by: Robert P. J. Day <[email protected]> Signed-off-by: Christoph Fritz <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-16Merge branch 'for-linus' of ↵Linus Torvalds2-1/+2
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: w90p910_ts - fix call to setup_timer() Input: synaptics - fix wrong dimensions check Input: i8042 - mark stubs in i8042.h "static inline"
2010-07-15Input: evdev - signal that device is writable in evdev_poll()Dmitry Torokhov1-2/+7
Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-15Input: mousedev - signal that device is writable in mousedev_poll()Julien Moutinho1-2/+7
The Microsoft ImPS/2 mouse protocol being bidirectionnal (sic) one may have to write in /dev/input/mice; and that works better if select() does not hang. Signed-off-by: Julien Moutinho <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-15Input: change input handlers to use bool when possibleDmitry Torokhov4-13/+12
Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-15Input: introduce MT event slotsHenrik Rydberg2-43/+96
With the rapidly increasing number of intelligent multi-contact and multi-user devices, the need to send digested, filtered information from a set of different sources within the same device is imminent. This patch adds the concept of slots to the MT protocol. The slots enumerate a set of identified sources, such that all MT events can be passed independently and selectively per identified source. The protocol works like this: Instead of sending a SYN_MT_REPORT event immediately after the contact data, one sends an ABS_MT_SLOT event immediately before the contact data. The input core will only emit events for slots with modified MT events. It is assumed that the same slot is used for the duration of an initiated contact. Acked-by: Ping Cheng <[email protected]> Acked-by: Chase Douglas <[email protected]> Acked-by: Rafi Rubin <[email protected]> Signed-off-by: Henrik Rydberg <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-15Input: w90p910_ts - fix call to setup_timer()Wan ZongShun1-1/+1
No need to take address, w90p910_ts is already a pointer. Signed-off-by: Wan ZongShun <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-15Input: usbtouchscreen - implement reset_resumeOliver Neukum1-32/+76
This implements reset_resume() by splitting init into allocations of private data structures and device initializations. Device initializations are repeated upon reset_resume. Signed-off-by: Oliver Neukum <[email protected]> Tested-by: Petr Štetiar <[email protected]> Tested-by: Ondrej Zary <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-15Input: usbtouchscreen - implement runtime power managementOliver Neukum1-3/+24
This implement USB autosuspend while the device is opened for devices that do remote wakeup with a fallback to open/close for those devices that don't. Devices that require the host to constantly poll them are never autosuspended. Signed-off-by: Oliver Neukum <[email protected]> Tested-by: Petr Štetiar <[email protected]> Tested-by: Ondrej Zary <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-15Input: usbtouchscreen - implement basic suspend/resumeOliver Neukum1-0/+25
This implements basic support for suspend & resume. Signed-off-by: Oliver Neukum <[email protected]> Tested-by: Petr Štetiar <[email protected]> Tested-by: Ondrej Zary <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-14Input: Add ATMEL QT602240 touchscreen driverJoonyoung Shim3-0/+1414
The chip's full name is AT42QT602240 or ATMXT224. This is a capacitive touchscreen supporting 10-contact multitouch and using I2C interface. Signed-off-by: Joonyoung Shim <[email protected]> Acked-by: Henrik Rydberg <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-14Input: synaptics - fix wrong dimensions checkTakashi Iwai1-0/+1
The commit 83ba9ea8a04b72dfee2515428c15e7414ba4fc61 ommitted the return line for the old synaptics model accidentally. This resulted in a wrong check, namely, the dimensions are checked for the old devices that don't support the query properly. This patch adds the return line back. Signed-off-by: Takashi Iwai <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-14Input: fix signedness warning in input_set_keycode()Dmitry Torokhov1-1/+1
The dev->getkeycode() method expects unsigned argument. Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-14Input: Add pwm beeper driverLars-Peter Clausen3-0/+211
This patch adds a simple driver which allows to use pwm based beepers (for example piezo elements) as a pcspkr-like device. Signed-off-by: Lars-Peter Clausen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-13Input: xpad - remove mouse buttons and axes for dance padsChristoph Fritz1-44/+63
Dance pads don't have any axes/sticks, only buttons for directions. For example buttons like left+right will get triggered at once, an axis can't handle this anyway. So this patch adds a module parameter named "sticks_to_null" for unknown devices. A known dance pad makes use of it by changing to a new mapping-option named DANCEPAD_MAP_CONFIG. Other tested devices may follow by adding this mapping-option too. Some buttons of xpad-devices are addressing mouse-buttons instead of gamepad-buttons. This gets fixed too. Signed-off-by: Christoph Fritz <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-13Input: atlas_btns - switch to using pr_err() and friendsDmitry Torokhov1-15/+8
This ensures consistent prefixes on all messages emitted by the driver. Signed-off-by: Dmitry Torokhov <[email protected]>
2010-07-13Input: atlas_btns - fix mixing acpi_status and int for return valueAxel Lin1-8/+6
To improve readability, this patch fixes mixing acpi_status and int for return value. Signed-off-by: Axel Lin <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>