| Age | Commit message (Collapse) | Author |
|
The current reset-gpio support triggers an interrupt storm on platforms
using the maxtouch with level based interrupt. The Motorola Droid 4,
which I used for some of the tests is not affected, since it uses a edge
based interrupt.
This change avoids the interrupt storm by enabling the device while its
interrupt is disabled. Afterwards we wait 100ms. This is important for
two reasons: The device is unresponsive for some time (~22ms for
mxt224E) and the CHG (interrupt) line is not working properly for 100ms.
We don't need to wait for any following interrupts, since the following
mxt_initialize() checks for bootloader mode anyways.
This fixes a boot issue on GE PPD (watchdog kills device due to
interrupt storm) and does not cause regression on Motorola Droid 4.
Fixes: f657b00df22e ("Input: atmel_mxt_ts - add support for reset line")
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Reviewed-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
(cherry picked from commit ca1cd36cef00260db6b35b32d863e0c580c0488d)
Signed-off-by: Dominik Sliwa <dominik.sliwa@toradex.com>
(cherry picked from commit 40af4dba5fe9c14bd254fde06b1f64f8c0348974)
|
|
Provide support for controlling reset pin. If this is not driven
correctly the device will be held in reset and will not respond.
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
(cherry picked from commit f657b00df22e231da217ca0162a75db452475e8f)
Signed-off-by: Dominik Sliwa <dominik.sliwa@toradex.com>
(cherry picked from commit 51a32466a0ca40843039b6d1f1e719bc93db8a21)
|
|
Switch mxt_data and interrupt to resource managed allocation methods,
which cleans up the driver slightly and prepares for adding
reset GPIO support.
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
(cherry picked from commit 8cc8446b9b62ef954b630ed30e53bd1553e916a6)
|
|
When using the 'object' sysfs attribute, T100 is not displayed in
the output.
Signed-off-by: Maxime Roussin-Bélanger <maxime.roussinbelanger@gmail.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
(cherry picked from commit 089b50d95948f691589cca4d81f1f8761747dbaa)
|
|
If a function declares a variable to access a structure element,
use it consistently.
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
(cherry picked from commit d7ddf15414dd598b9b875664e6b7aebe6c988f5d)
|
|
This reverts commit 28531a1ff5ca27c0ab7e2f99bbb0058858b72aa5.
|
|
Signed-off-by: Dominik Sliwa <dominik.sliwa@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
(cherry picked from commit 22a2065b9a3fa6ad458e3100b66c4acaa05f2466)
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Update mxt driver to upstream version.
Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
According to multi-touch-protocol.txt the kernel knows two type of
devices:
- Type A: devices which provide anonymous contacts
- Type B: devices which are capable of tracking individual contacts
The Fusion touch screen is a Type B device: The Touch ID field allows
to differentiate between 2 different fingers. This updates the driver
to properly allocate a slot for each identified contact and use the
helper functions available from the input core system.
(cherry picked from commit 698d0a9bb80d94adef58122717c61f55dd61e22d)
|
|
Use level triggered interrupt which makes sure that even we miss a
rising edge (due to latencies in the kernel), the interrupt still
will be handled later, and doesn't freeze the input device.
(cherry picked from commit ef25b8a9f9c0ca7cc0f0f955d89d112c3e19f75b)
|
|
Use platform independent description for requested GPIOs.
|
|
Fix chip reset by sleeping long enought after reset. Do proper error
handling (free GPIO on failure). Use dev_* for message logging to get
similar messages for all fusion driver related errors and warnings.
|
|
To avoid warnings use the new I2C power management function for
suspend and resume.
|
|
Added platform data struct to define interrupt and reset GPIO. This
allows to initialize the touchscreen controller inside the driver
rather then in each platform and use the driver as a module.
|
|
When the next interrupt request apeares between the confirmation of
the previous (a write via I2C, fusion_F0710A_write_complete) and
the reenable of the GPIO interrupt, the driver hangs and no more
touch inputs are reported.
This patch moves the confirmation after the reenabling of the GPIO
interrupt.
|
|
Recent evdev X-Server input driver implementation complain when
only multitouch axes have been reported ("found only multitouch-axes.
That shouldn't happen."). Therefor also report the primary touch
detection with default axis.
|
|
In order to use the auxiliar ADC inputs of STMPE811 devices we need
to add resources for the ADC block. Also move the ADC macros from
the touchscreen driver to the general header file. We will need them
for the ADC driver in future.
|
|
For Android use ICS variant of Fusion 7 and 10 multi-touch driver (See
Fusion 7 and 10 drivers for Linux.pdf and Linux Drivers Fusion 10.zip).
Tested to be working both with Android 4.0.4 for Colibri T20 as well as
Android 4.2.1 for Colibri T30.
|
|
The Android idc parser seems to have an issue with spaces in names:
D/EventHub( 159): No input device configuration file found for device
'wm97xx touchscreen'.
Rename the driver in order for the idc parser to recognise idc file
/system/usr/idc/wm97xx-ts.idc being a simple copy of the qwerty.idc
one.
|
|
Rotate touch for now due to missing resistive touch calibration
integration. This makes our 5.7 inch EDT ET057090DHU panel usable.
|
|
Rotate touch for now due to missing resistive touch calibration
integration. This makes our 7 inch EDT ET070080DH6 panel usable.
|
|
This patch adds the multi-touch input driver for the TouchRevolution
Fusion 7 and 10 panels (See Fusion 7 and 10 drivers for Linux.pdf and
Linux Drivers Fusion 10.zip).
|
|
Conflicts:
arch/arm/mach-tegra/tegra3_usb_phy.c
arch/arm/mach-tegra/usb_phy.c
drivers/usb/gadget/tegra_udc.c
drivers/usb/otg/Makefile
drivers/video/tegra/fb.c
sound/soc/tegra/tegra_pcm.c
|
|
Android immediately shuts down due to too low voltage reading from
wm97xx-battery driver on our analog input pins if nothing is connected.
Making our hack not Android dependant means driver still fails loading
on Android therefore resolving above issue for now.
|
|
While the ADC platform data passing worked just fine in kernel 2.6.36.2
this currently fails. Therefore introduce an ugly hack to explicitly
get said data via a board level call back.
|
|
Previous HZ / 50 calculation allowed for a touch sampling time of 20 ms
which is not sufficient if either the touch detect delay or the
settling time is longer than 500 us.
|
|
Add BTN_TOUCH event reporting to stmpe-ts touchscreen driver. This will
make this touchscreen driver behave consistently wrt. BTN_TOUCH.
cd2d64b1a0a12283d63c9d853d5b1403d5cd6c9d
65db86ac07e2f7f91a552490c0be6a99aab8e4a8
|
|
This change assists automating system wide
touch driver performance.
Bug 928954
Change-Id: Iea21dfea1c31748ce5835652cecc0856c4f4028d
Signed-off-by: Vikas Jain <vjain@nvidia.com>
Reviewed-on: http://git-master/r/118984
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Reviewed-by: David Jung <djung@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
|
|
Remove write permission for cts verification. The init script
will make it acessible on engineering builds
Bug 906796
Change-Id: I43170f61871018d15a710c1a75b5298dffec6f87
Signed-off-by: Hao Tang <htang@nvidia.com>
Reviewed-on: http://git-master/r/106667
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: David Schalig <dschalig@nvidia.com>
Reviewed-by: Robert Collins <rcollins@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
|
|
bug 949219
Change-Id: I408fb008a70c7ea546384e68ac50c1f0604fc39a
Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com>
Reviewed-on: http://git-master/r/92276
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
|
|
bug 949219
Change-Id: I5942ba86bd1cbe1f1bd06a7c9f51a10d83e6cabb
Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com>
Reviewed-on: http://git-master/r/92819
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
|
|
Maximum power saving is observed by disabling multiple touchscreen
objects. Objects must be saved going into LP0, and restored in
reverse order upon resuming from LP0.
Bug 919435
Change-Id: I42799fbb02efd28e4954b53b3d052ad138537ce9
Signed-off-by: Robert Collins <rcollins@nvidia.com>
Reviewed-on: http://git-master/r/88458
Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
Tested-by: Gerrit_Virtual_Submit
|
|
Modified driver files to support unified DirectTouch which
can support Kai and Cardhu together. Vendor-supplied source
code update.
Bug 832605
Signed-off-by: Ali Ekici <aekici@nvidia.com>
Change-Id: If0799147b50e9c2cf102d2216103e30b525026e4
Reviewed-on: http://git-master/r/80128
Reviewed-by: Robert Collins <rcollins@nvidia.com>
Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
Tested-by: Robert Collins <rcollins@nvidia.com>
Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
(cherry picked from commit 1dfd9d747b8ceb344a435daac60d30f1a6441bcb)
Reviewed-on: http://git-master/r/83568
Tested-by: Gerrit_Virtual_Submit
|
|
Take off the world-write bit from the default permissions for the
mem_access debug node. The init scripts will make it accessible on
engineering builds.
Bug 906796
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
Reviewed-on: http://git-master/r/79095
(cherry picked from commit a6ba61cc290bebb5dd16e4ad02cd1e8b3b9802b2)
Change-Id: I3e118dd502aa8912ad5fcb8452105c7f5f1c833a
Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
Reviewed-on: http://git-master/r/82725
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
Tested-by: Varun Wadekar <vwadekar@nvidia.com>
|
|
This is Synaptics' open source driver except one line
change to accomodate an SPI kernel driver feature
which does not accomodate optional byte-delay. It
will be fully original driver when we add byte-delay
into Tegra SPI kernel drivers.
Bug 912775
Reviewed-on: http://git-master/r/74642
Change-Id: I0f39928c48bc0e633de0d2c1f595bcef47268d52
Signed-off-by: Peter Zu <pzu@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-on: http://git-master/r/77774
Reviewed-by: Automatic_Commit_Validation_User
|
|
Reviewed-on: http://git-master/r/77504
Change-Id: Iafe31126fbcec1bfd01b51e0c122b44d3a71bbda
Signed-off-by: Peter Zu <pzu@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-on: http://git-master/r/77759
Reviewed-by: Automatic_Commit_Validation_User
|
|
Raydium is responsible from pushing this driver
to kernel.org. This driver contains two distinct
drivers, one communicates with Touch IC using SPI
and pushes raw touch data received to a file system,
another driver who is a misc driver receives
processed touch data and initiates touch
input_abs_report touch commands which can only be
issued by a driver.
Changed misc_deregister call from rm31080_spi_exit to
rm31080_spi_remove
Bug 832605
Reviewed-on: http://git-master/r/74432
Change-Id: I8f361130bfe3236cf88ab4348c3d578c84c63ba7
Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
Signed-off-by: Ali Ekici <aekici@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-on: http://git-master/r/76820
Reviewed-by: Automatic_Commit_Validation_User
|
|
Fixes two error cases with slowscan:
1. Disable slowscan without first enabling it.
Leaves TS controller disabled.
2. Enable slowscan twice consecutively.
Leaves TS controller programmed with incorrect values.
Bug 909304
Change-Id: I06db55aaf5935a838953d4f2fcf8f5dc2bb7123b
Signed-off-by: Robert Collins <rcollins@nvidia.com>
Reviewed-on: http://git-master/r/67501
(cherry picked from commit bb17439a70c585d35822d38ce5b53ca8368ab3a4)
Reviewed-on: http://git-master/r/70222
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
|
|
The hardware gives you 0 as the pressure even for
valid touches. Pass a default value if you get
pressure value outside limits from the hardware during
a 'press'.
Pass pressure as 0, for a 'release'.
Change-Id: Id858240464474d3c18e4bae9768f41327c5d4124
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
|
|
When 2nd multi touch is removed, release point is (0,0) point.
To correct this, in removing 2nd multi touch,
we send last touched position of 2nd multi touch.
And this removes noise touch event and joystick event also.
Bug 896919
Change-Id: Icccaa3ccc28e613565ce696339b83d60335b344a
Reviewed-on: http://git-master/r/64008
Reviewed-by: Varun Colbert <vcolbert@nvidia.com>
Tested-by: Varun Colbert <vcolbert@nvidia.com>
Rebase-Id: Re3c488cd60c5b02ec43fa8f3e700dc93afbff043
|
|
Change-Id: I08eb7b5ad1c70b84ff40ba75a29913b61634d0f0
Signed-off-by: Scott Williams <scwilliams@nvidia.com>
Reviewed-on: http://git-master/r/48786
Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com>
Rebase-Id: Rc7ac5d5153d845c8be10dbe79f57083fb1919760
|
|
In the case where early suspend/resume is enabled, prevent
suspend/resume from being called twice. Removing the
default suspend/resume handlers while early suspend/resume is
enabled prevents the double suspend/resume from occurring.
BUG 843934
Original-Change-Id: I2e014f7a79db524cbe9d5b8b934c8f42216a8ad5
Reviewed-on: http://git-master/r/38576
Tested-by: Krishna Yarlagadda <kyarlagadda@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Robert R Collins <rcollins@nvidia.com>
Tested-by: Robert R Collins <rcollins@nvidia.com>
Rebase-Id: R6c38a345206679eb2ee5ca279d0ffa922c3f8744
|
|
Add early suspend/resume functionality to Atmel touch driver.
0W suspend.
Early suspend/resume functions written and provided by
Atmel Corporation.
BUG 826854
Original-Change-Id: I58d5abacff20df9d3027c960021e94298e31b8a6
Reviewed-on: http://git-master/r/35286
Reviewed-by: Robert R Collins <rcollins@nvidia.com>
Tested-by: Robert R Collins <rcollins@nvidia.com>
Reviewed-by: Scott Williams <scwilliams@nvidia.com>
Reviewed-by: Narendra Damahe <ndamahe@nvidia.com>
Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com>
Rebase-Id: R1364d26f0c95bdb9e650e3231ac254242a9b3349
|
|
Conflicts:
arch/arm/mach-tegra/Kconfig
arch/arm/mach-tegra/board-ventana.c
drivers/misc/Kconfig
drivers/video/tegra/dc/hdmi.c
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
|
|
Video playback would like to save power by slowing touchscreen
scanning. This change adds a SysFS interface to allow the
scan rate to be programmed by the video display interface.
SysFS location:
/sys/devices/platform/tegra-i2c.1/i2c-1/1-005a/slowscan_enable
Read functions:
cat slowscan_enable (returns current register status)
Write functions:
0 - Disable slowscan
1 - Enable slowscan
2 N - Program actv_cycle_time with value of N
3 N - Program idle_cycle_time with value of N
4 N - Program actv2idle timeout with value of N (seconds * 10)
Bug 891993
Change-Id: Ib11b544019f3a78290785502e7209b8cbd985852
Reviewed-on: http://git-master/r/65006
Reviewed-by: Robert Collins <rcollins@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Rebase-Id: Re4398871d4964d366f0dbdd856a7953600577dea
|
|
In order to save system power, we should cut the power to the
touchscreen controller. Older versions of our TS driver did this.
This feature was accidentally removed during a recent driver
update.
Bug 891979
Change-Id: I4bf9333832af65c00b8b10cc8191f4d26aad04e4
Reviewed-on: http://git-master/r/65005
Reviewed-by: Robert Collins <rcollins@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Rebase-Id: R370b26e990a5f129ea0f8e73e9b7178bd85b79e5
|
|
Updated to new Atmel touch driver. Added sysfs interface to
allow Config-UI applications to run.
Primary changes:
* Add sysfs interface to allow user applications access to the
touchscreen controller register interface. Required by
Config-UI utility.
* Fixed bug in stop/start functions that would prevent TS
from working with encrypted filesystems.
* Fix logic error that could cause a deadlock condition during
LP0 resume.
Change-Id: If25260e60843e3c3bb3a9818ed9146ea78c39902
Reviewed-on: http://git-master/r/65004
Reviewed-by: Robert Collins <rcollins@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Rebase-Id: R9bde02eeeae3a899e18d17b5ff26cac371729cb0
|
|
in some situations
BUG 868649
Reviewed-on: http://git-master/r/50598
(cherry picked from commit ad1dbe0eda931f813b20d75400daaa9edf18c82a)
Change-Id: I29f353687c499ff830e98fcf038d8a786dc5608b
Reviewed-on: http://git-master/r/54841
Reviewed-by: Joel Kenny <jkenny@nvidia.com>
Reviewed-by: Robert Collins <rcollins@nvidia.com>
Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
Tested-by: Joel Kenny <jkenny@nvidia.com>
Rebase-Id: Rdde94e071f4a27250eccad562c819ca2f537ffcd
|
|
Prevents touchscreen hangs during initial TS boot, and TS resume.
BUG 847725
BUG 845156
BUG 846711
Original-Change-Id: Ia853574e4b2422eb9368fe37eaf7457bd4022df8
Reviewed-on: http://git-master/r/40261
Reviewed-by: Varun Colbert <vcolbert@nvidia.com>
Tested-by: Varun Colbert <vcolbert@nvidia.com>
Rebase-Id: Rc1de4685a4e85d761097142b39f2a672846b8c44
|
|
* Fix suspend/resume bug to prevent unecessary i2cinterrupts when suspended.
* Change input device name to match NVDA IDC name.
* Add I2C address defines.
* Change "printk" to "dev_info" function calls.
BUG 826854
Original-Change-Id: Ic1b25bc469b86d8a26e876e80973597d9f6fb107
Reviewed-on: http://git-master/r/35285
Reviewed-by: Robert R Collins <rcollins@nvidia.com>
Tested-by: Robert R Collins <rcollins@nvidia.com>
Reviewed-by: Scott Williams <scwilliams@nvidia.com>
Reviewed-by: Narendra Damahe <ndamahe@nvidia.com>
Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com>
Rebase-Id: Rcba51c79d3c004372c0be18538f14f56a2249bc0
|