Commit Graph

2409 Commits

Author SHA1 Message Date
Praveena Pachipulusu
8b621e4279 input: cyttsp-i2c: Change the permission of firmware sysfs entries
CRs-fixed: 302911
Signed-off-by: Praveena Pachipulusu <pveena@codeaurora.org>
2011-10-03 16:17:00 -07:00
Amy Maloche
13dcf554d9 input: cyttsp-i2c: Reduce time needed to resume from sleep
Reduce the number to attempts to move out of bootloader
mode.

Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2011-10-03 16:16:20 -07:00
Anirudh Ghayal
ab2754e472 input: cyttsp-i2c: Improve error handling in bootloader mode
Attempt multiple I2C writes (in case of failures) to get the
device out of bootloader mode.

Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-10-03 16:16:19 -07:00
Zhang Chang Ken
f5a4bbe4a0 input: cy8c_ts: Add support for TMA340 TS controller
This controller uses the same packet format as TMA300

Signed-off-by: Zhang Chang Ken <kenz@codeaurora.org>
2011-10-03 16:16:01 -07:00
Mohan Pallaka
727225f609 input: cyttsp-i2c: Add support for disabling ghost touch detection
Add support to treat ghost touches as normal touches incase firmware
reports all touches as ghost touches.

Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2011-10-03 16:15:53 -07:00
Anirudh Ghayal
f1071c0d57 input: atmel-mxt-ts: Make USERDATA as writable object
The USERDATA object can be used to store user specific
data such as version info.

Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-10-03 16:15:25 -07:00
Anirudh Ghayal
253ce1292f input: atmel-mxt-ts: Add earlysuspend support
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-10-03 16:15:24 -07:00
Anirudh Ghayal
a498e4d825 input: atmel-mxt-ts: Add regulator support and init. callbacks
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-10-03 16:15:24 -07:00
Mohan Pallaka
df53bc38e9 input: cy8c_ts: Clear status register in resume
To avoid firmware getting lock up after suspend
clear the status register in resume.

CRs-fixed: 300494
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2011-10-03 16:14:10 -07:00
Mohan Pallaka
1cef4a0f37 input: cyttsp-i2c: Verify checksum before firmware upgrade
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2011-10-03 10:27:46 -07:00
Amy Maloche
edd5fd79fb input: cyttsp-i2c: choose firmware start address
Firmware start address changes from GEN3 to GEN2 devices.
Select proper firmware start address based on chip generation.

Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2011-10-03 10:26:42 -07:00
Bryan Huntsman
3f2bc4d6eb Initial Contribution
msm-2.6.38: tag AU_LINUX_ANDROID_GINGERBREAD.02.03.04.00.142

Signed-off-by: Bryan Huntsman <bryanh@codeaurora.org>
2011-10-03 09:57:10 -07:00
Bryan Huntsman
66589de55e Merge remote-tracking branch 'linux-audio/sgc/topic/omap_3.0'
* linux-audio/sgc/topic/omap_3.0: (106 commits)
  ASoC: twl6040: Configure init gain to minimal value
  ASoC: ABE: Protect playback/capture triggers against removal
  ASoC: DSP: Connect FE->BE links if FE is active
  ASoC: McPDM: Update channel management (for squash)
  ASoC: OMAP4 - Port Manager: Fix up DEBUG_FS compilation error
  ASoC: ABE DSP: Fixes for firmware equalizer parsing
  ASoC: ABE DSP: Use same firmware strategy for built-in and modules
  ASoC: ABE HAL: Allow flexible firmware loading
  ASoC: ABE DSP: Fix compilation warnings
  ASoC: OMAP ABE: update Firmware version 09.45
  ASoC: pcm - fix locking for dsp ops
  ASoC: OMAP ABE: Update for PM.
  ASoC: McPDM: Update channels management to link UL and DL
  ASoC: ABE DAI: Call modem trigger in bespoke_trigger()
  ASoC: ABE DAI: support 2 channels for MODEM DAI
  OMAP4: SDP4430: Fix merge issue with new MFD driver
  ASoC: OMAP: SDP4430 fix merge issue.
  ASoC: dapm: Fix long_name pointer for DAPM muxes
  ASoC: mcpdm: Enable watchdog during audio activity
  ASoC: SDP4430: Fix DMICs stream name
  ...
2011-09-23 11:00:20 -07:00
Misael Lopez Cruz
95ed04e15e input: Add initial support for TWL6040 vibrator
Add twl6040_vibra as a child of MFD device twl6040_codec. This
implementation covers the PCM-to-PWM mode of TWL6040 vibrator
module.

Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
CC: Tejun Heo <tj@kernel.org>
2011-07-24 21:31:54 +02:00
Peter Ujfalusi
be206b3963 MFD: twl4030-audio: Rename platform data
Allign the platform data names for twl4030 audio submodule:
twl4030_audio_data: for the core MFD driver
twl4030_codec_data: for ASoC codec driver
twl4030_vibra_data: for the input/ForceFeedback driver

To avoid breakage, change all depending drivers, files
to use the new types.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2011-07-24 21:31:53 +02:00
Peter Ujfalusi
d189dd57aa MFD: twl4030-codec -> twl4030-audio: Rename the driver
Rename the driver, and header file from twl4030-codec to
twl4030-audio.
To avoid breakage change depending drivers at the same time.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
CC: Misael Lopez Cruz <misael.lopez@ti.com>
2011-07-24 21:31:53 +02:00
Colin Cross
75c56a8111 Merge commit 'v3.0-rc7' into android-3.0 2011-07-12 20:10:37 -07:00
Samuel Ortiz
63ef1124f1 input: pmic8xxx-pwrkey: Do not use mfd_get_data()
mfd_get_data() has been removed from the MFD API.

Cc: Anirudh Ghayal <aghayal@codeaurora.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2011-07-05 10:38:43 +02:00
Samuel Ortiz
1d08382a0e input: pmic8xxx-keypad: Do not use mfd_get_data()
mfd_get_data() has been removed from the MFD API.

Cc: Anirudh Ghayal <aghayal@codeaurora.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2011-07-05 10:38:43 +02:00
Colin Cross
e55d4fa967 Merge commit 'v3.0-rc5' into android-3.0 2011-06-29 13:54:42 -07:00
Linus Torvalds
c01ad40819 Merge branch 'for-linus' of 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: sh_keysc - 8x8 MODE_6 fix
  Input: omap-keypad - add missing input_sync()
  Input: evdev - try to wake up readers only if we have full packet
  Input: properly assign return value of clamp() macro.
2011-06-20 08:59:46 -07:00
Magnus Damm
cca23d0b53 Input: sh_keysc - 8x8 MODE_6 fix
According to the data sheet for G4, AP4 and AG5 KEYSC MODE_6 is 8x8 keys.
Bump up MAXKEYS to 64 too.

Signed-off-by: Magnus Damm <damm@opensource.se>
Reviewed-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2011-06-18 02:55:01 -07:00
Janusz Krzysztofik
b27af563be Input: omap-keypad - add missing input_sync()
Otherwise the updated evdev driver (commit cdda911c34,
"Input: evdev - only signal polls on full packets") no longer works on
top of omap-keypad.

Tested on Amstrad Delta.

Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>
Reviewed-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2011-06-18 02:54:42 -07:00
Dmitry Torokhov
da40b0b6b4 Input: evdev - try to wake up readers only if we have full packet
We should only wake waiters on the event device when we actually post
an EV_SYN/SYN_REPORT to the queue. Otherwise we end up making waiting
threads runnable only to go right back to sleep because the device
still isn't readable.

Reported-by: Jeffrey Brown <jeffbrown@android.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2011-06-18 02:54:02 -07:00
Jeff Brown
4700c54b66 input: gpio_input: send input_sync after reporting keys
Signed-off-by: jeffbrown@android.com
Change-Id: Ie170960df3c8ab4833ed686135dc8575cb9f2d48
2011-06-14 09:11:54 -07:00
Jeff Brown
be4cb21cb0 input: gpio_matrix: send input_sync after reporting keys
Signed-off-by: jeffbrown@android.com
Change-Id: I9bd2437503b48bf37f4d93505ccd2806e4aab977
2011-06-14 09:11:47 -07:00
Colin Cross
6e89051692 input: misc: gpio_matrix: Fix irq call for 2.6.39
Change-Id: Ib8dd0ab6554e6b0e3798bf75d41f77ea0b20b8de
Signed-off-by: Colin Cross <ccross@android.com>
2011-06-14 09:09:57 -07:00
Colin Cross
f780a1f78f input: keyreset: Only print message for default handler
Change-Id: I68e5451fef2e6f08bf1035077ea999e34a619f87
Signed-off-by: Colin Cross <ccross@android.com>
2011-06-14 09:09:50 -07:00
Benoit Goby
0ee5695f24 input: evdev: Add missing wake_lock_destroy
Change-Id: Ief1ef44d98a197e5b457f5e8617c413e76e3c6d2
Signed-off-by: Benoit Goby <benoit@android.com>
2011-06-14 09:09:49 -07:00
Colin Cross
677ef29f71 input: keyreset: Allow reset function to be overriden
Change-Id: Ibb3dda05772b2e89d7b2646689944d309cb1f74e
Signed-off-by: Colin Cross <ccross@android.com>
2011-06-14 09:09:44 -07:00
Dima Zavin
2311937725 input: gpio_event: make driver be more robust against incorrectly configured lvl trigger irqs
Change-Id: Ie378600668500dcffeaaddeaba3628e5c2141aa4
Signed-off-by: Dima Zavin <dima@android.com>
2011-06-14 09:09:34 -07:00
Arve Hjønnevåg
e7b269e317 Input: gpio_event: Don't call gpio_cansleep before gpio_request.
If the gpio did not exist it would crash in gpiolib.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:09:33 -07:00
Dmitry Shmidt
2921bbb7b5 drivers: input: misc: Fix section mismatch warning
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-06-14 09:09:33 -07:00
Rebecca Schultz Zavin
70abd67c1d Input: synaptics_i2c_rmi: Add irqflags to platform data struct to pass them to driver
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:50 -07:00
Arve Hjønnevåg
90229d879b Input: synaptics_i2c_rmi: Send new multi touch events
Send both fingers using the new multitouch protocol in addition to
the old single finger event and second finger ABS_HAT* hack.

The new protocol does not specify how to report up events. To make
sure the user-space frameworks can generate up events, we send at
least one event where ABS_MT_TOUCH_MAJOR is zero before we stop
sending events for a finger.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:49 -07:00
Arve Hjønnevåg
1d1ca96322 Input: synaptics_i2c_rmi: Add sensitivity adjust option.
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:49 -07:00
Arve Hjønnevåg
3f8a4b06d2 Input: synaptics_i2c_rmi: Add support for panels with has-no-relative-data property.
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:49 -07:00
Arve Hjønnevåg
00adffddbc Input: synaptics_i2c_rmi: Driver for Synaptics Touchscreens using RMI over I2C.
Signed-off-by: Arve Hjønnevåg <arve@android.com>

Input: synaptics_i2c_rmi: disable_irq -> disable_irq_nosync

Also remove duplicate swap macro

Change-Id: I77266431ba5c267a5d92c4bdc2f127a5297065a8
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:49 -07:00
Mike Lockwood
16e1bce6e2 input: keychord: Add keychord driver
This driver allows userspace to receive notification when client
specified key combinations are pressed.
The client opens /dev/keychord and writes a list of keychords
for the driver to monitor.
The client then reads or polls /dev/keychord for notifications.
A client specified ID for the keychord is returned from read()
when a keychord press is detected.

Signed-off-by: Mike Lockwood <lockwood@android.com>

keychord: fix to build without CONFIG_PREEMPT

Change-Id: I911f13aeda4224b6fa57863bc7e8972fec8837fb
2011-06-14 09:08:49 -07:00
Arve Hjønnevåg
c1678677a5 input: Add keyreset driver.
Add a platform device in the board file to specify a reset key-combo.
The first time the key-combo is detected a work function that syncs
the filesystems is scheduled. If all the keys are released and then
pressed again, it calls panic. Reboot on panic should be set for
this to work.

Change-Id: I9d54283ca1fba45e4b1ae1a407524cdda8171143
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:48 -07:00
Arve Hjønnevåg
9be7b631ab Input: gpio_input: disable_irq -> disable_irq_nosync
Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:48 -07:00
Arve Hjønnevåg
0da26bfb4e Input: gpio_event: Allow multiple input devices per gpio_event device
This is needed to support devices that put non-keyboard buttons in
the keyboard matrix. For instance several devices put the trackball
button in the keyboard matrix. In this case BTN_MOUSE should be
reported from the same input device as REL_X/Y.

It is also useful for devices that have multiple logical keyboard in
the same matrix. The HTC dream has a menu key on the external keyboard
and another menu key on the slide-out keyboard. With a single input
device only one of these menu keys can be mapped to KEY_MENU.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:48 -07:00
Arve Hjønnevåg
8f836aa8da Input: gpio_input: Fix keys with keycode 0x100-0x1ff
KEY_MAX is no longer a power of 2.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:48 -07:00
Arve Hjønnevåg
72fc624687 Input: Generic GPIO Input device.
Supports keyboard matrixces, direct inputs, direct outputs and axes connected to gpios.

Change-Id: I5e921e6e3a1cc169316ee3b665f4cc21b5735114
Signed-off-by: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Nick Pelly <npelly@google.com>
2011-06-14 09:08:48 -07:00
Mike Chan
2a1f352ace input: evdev: Use unique wakelock names
wakelock names are now contain evdev->name and pid

Signed-off-by: Mike Chan <mike@android.com>
2011-06-14 09:08:45 -07:00
Arve Hjønnevåg
5d61887ea1 Input: Use monotonic time for event time stamps.
Since wall time can jump backwards, it cannot be used to determine if one
event occured before another or for how long a key was pressed.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:45 -07:00
Arve Hjønnevåg
ca5d75f61a Input: Hold wake lock while event queue is not empty.
Allows userspace code to process input events while
the device appears to be asleep.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
2011-06-14 09:08:44 -07:00
Linus Torvalds
55db4c64ed Revert "tty: make receive_buf() return the amout of bytes received"
This reverts commit b1c43f82c5.

It was broken in so many ways, and results in random odd pty issues.

It re-introduced the buggy schedule_work() in flush_to_ldisc() that can
cause endless work-loops (see commit a5660b41af: "tty: fix endless
work loop when the buffer fills up").

It also used an "unsigned int" return value fo the ->receive_buf()
function, but then made multiple functions return a negative error code,
and didn't actually check for the error in the caller.

And it didn't actually work at all.  BenH bisected down odd tty behavior
to it:
  "It looks like the patch is causing some major malfunctions of the X
   server for me, possibly related to PTYs.  For example, cat'ing a
   large file in a gnome terminal hangs the kernel for -minutes- in a
   loop of what looks like flush_to_ldisc/workqueue code, (some ftrace
   data in the quoted bits further down).

   ...

   Some more data: It -looks- like what happens is that the
   flush_to_ldisc work queue entry constantly re-queues itself (because
   the PTY is full ?) and the workqueue thread will basically loop
   forver calling it without ever scheduling, thus starving the consumer
   process that could have emptied the PTY."

which is pretty much exactly the problem we fixed in a5660b41af.

Milton Miller pointed out the 'unsigned int' issue.

Reported-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Reported-by: Milton Miller <miltonm@bga.com>
Cc: Stefan Bigler <stefan.bigler@keymile.com>
Cc: Toby Gray <toby.gray@realvnc.com>
Cc: Felipe Balbi <balbi@ti.com>
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-06-04 06:33:24 +09:00
Trilok Soni
92d57a73e4 input: Add support for Qualcomm PMIC8XXX power key
Add support for PMIC8XXX power key driven over dedicated
KYPD_PWR_N pin.

Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2011-05-26 19:45:54 +02:00
Trilok Soni
39325b59d8 input: Add Qualcomm pm8xxx keypad controller driver
Add Qualcomm PMIC8XXX based keypad controller driver
supporting upto 18x8 matrix configuration.

Acked-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2011-05-26 19:45:53 +02:00