Commit Graph

2928 Commits

Author SHA1 Message Date
mars_kao
a189659b8d Modify the firmware update mechanism for 571K/KL.
follow the new bootcode flow in IC to update touch firmware.

Change-Id: I848714e4c24aaf89eab3337f343b22891ee83d55
Signed-off-by: mars_kao <mars_kao@asus.com>
2013-04-18 16:08:19 -07:00
mars_kao
c822119776 TouchScreen: remove debug message for touch irq handler.
Change-Id: I0cda1ac16eaf63da4f9c36f8b9a1a607bc528d05
Change-Id: I825eaeca198a59b36ce3aaa4da03ddae5a503a64
Reviewed-on: http://mcrd1-5.corpnet.asus/code-review/master/68222
Reviewed-by: Ho Yihua <yihua_ho@asus.com>
Tested-by: Ho Yihua <yihua_ho@asus.com>
2013-04-18 16:07:58 -07:00
mars_kao
7df7eba724 TouchScreen: driver porting for elan chip.
Change-Id: I86bb4a6c9a89ef3061fb5b2ba9e0d93a4931841a
Reviewed-on: http://mcrd1-5.corpnet.asus/code-review/master/68183
Reviewed-by: Ho Yihua <yihua_ho@asus.com>
Tested-by: Ho Yihua <yihua_ho@asus.com>
2013-04-18 16:07:57 -07:00
paris_yeh
ad31fba73d arm: keys: Report valid key status when pressing and releasing
Change-Id: I6d225f55973c1650d73cfa429dd442b7f5ccd311
Reviewed-on: http://mcrd1-5.corpnet.asus/code-review/master/61723
Reviewed-by: Sam hblee <Sam_hblee@asus.com>
Reviewed-on: http://mcrd1-5.corpnet.asus/code-review/master/62898
Signed-off-by: paris_yeh <paris_yeh@asus.com>
Reviewed-on: http://mcrd1-5.corpnet.asus/code-review/master/68014
Reviewed-by: Edward Lu <Edward_Lu@asus.com>
2013-04-18 16:07:53 -07:00
Jongrak Kwon
ea5a529636 mako: touch: PLG137 firmware E028 update
Increased the touch sensitivity.

Change-Id: If2bb58b4263d88d5b77f128f5b91875c63e05b86
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-15 17:09:37 -07:00
Orkhan Karimov
1859c1b841 input: bmp18x: create the syfs group for i2c device
Also change delay to pollrate_ms. This is for easy integration
with the sensor HALs.

Change-Id: I06e5e1f41caf2cee21ea2b218d672681b24ccd22

Signed-off-by: Orkhan Karimov <okarimov@codeaurora.org>
Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
2013-03-15 17:08:36 -07:00
hongji.zhou@cn.bosch.com
b86bc4b69f Bosch Sensortec BMP18x device driver V1.1
Change-Id: Ic0211615b6535cb45f8752afebb6db33962c9299

Signed-off-by: Hongji Zhou <Hongji.Zhou@cn.bosch.com>
Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
2013-03-15 17:08:29 -07:00
Duy Truong
04e554807c Update copyright to The Linux Foundation
Change-Id: Ibead64ce2e901dede2ddd1b86088b88f2350ce92
Signed-off-by: Duy Truong <dtruong@codeaurora.org>
2013-03-15 17:07:39 -07:00
Wentao Xu
fb46cdf3bf input: mpu3050: add enable/disable sysfs attribute
allow sensor HAL control the power state of gyro sensor, so that sensor is
disabled when not used.

Change-Id: Ib9f8e9761ea518534ffcd06f30de4b8f1f198687
Signed-off-by: Orkhan Karimov <okarimov@codeaurora.org>
2013-03-07 15:25:28 -08:00
Wentao Xu
0ea6dbeaa1 input: sensor: add check if regulator is valid before releasing it
Sensor regulator could be still invalid at the time of a system
suspend, this change is to avoid freeing NULL regulators under such
occasion.

Change-Id: Ia520b2516b43feaa3fbbbe30628cc47ee7fad96a
Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
2013-03-07 15:24:53 -08:00
Wentao Xu
63725d5d76 sensors: change sysfs attribute permissions
Those attributes used to be writable by world. This change allows
read only access by world.

CRs-Fixed: 382751

Change-Id: I2b37763514a86da9beed3fcb7dcb4706c790e44d
Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
Signed-off-by: Neha Pandey <nehap@codeaurora.org>
2013-03-07 15:24:18 -08:00
Sreenivasulu Chalam Charla
606fb22e97 Revert "touchscreen: cyttsp-i2c-qc: Add low power mode functionality"
This reverts commit 304d9f5172c8c0210e2e29b175e8f68ea8257f69.
low power mode changes are causing issues like,delay in reponse to
touch , and controller is not recognizing the touch events as its
scan rate is also low in low power mode state . since controller is
not recognizing the touch in low power mode state , so only way
for the controller to come out of low power mode is to do multi-touch
and controller responds randomly to one of the touches and comes out
of the low power mode.

Signed-off-by: Sreenivasulu Chalam Charla <sreeniva@codeaurora.org>

Change-Id: I35e0797f819cfbce6630d70af443b96546eacfb5
Signed-off-by: Neha Pandey <nehap@codeaurora.org>
2013-03-07 15:21:14 -08:00
Mohan Pallaka
26fd8a8046 input: pm8xxx-pwrkey: Update key press status during probe
Power key could be in pressed state during boot. Set the flag
to track the press status properly by reading press irq status.

(cherry picked from commit bd38250554df6e70657e6ff42ad63415dbd53f1a)
CRs-fixed: 404018
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>

Change-Id: I1b604b63e53803483d3cc2a7bae0a5e7ed98285b
Signed-off-by: Neha Pandey <nehap@codeaurora.org>
2013-03-07 15:21:03 -08:00
Mohan Pallaka
915eaefb52 input: atmel_mxt_ts: Add device tree support
Parse the device tree elements and fill platform
data structure.

Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
(cherry picked from commit d96f5032cd8b73450886262fe193d1531038c0f0)

Conflicts:

	drivers/input/touchscreen/atmel_mxt_ts.c

Change-Id: I551dadffaa84c991abbe964bfb9f72b7fd11dfee
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 368b8d73bbda62f6ab217ef06019b685636fc3ba)
2013-03-07 15:20:00 -08:00
Amy Maloche
27495ca54e input: atmel_mxt_ts: Fix macro (CONFIG_OF) name usage.
Macro should be CONFIG_OF and not OF_CONFIG.

Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
(cherry picked from commit 56cb58c1b832760adfe382b845e52837b7ea7e85)

Conflicts:

	drivers/input/touchscreen/atmel_mxt_ts.c

Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 54d1b97939cab0482aa5f4549e81ecf3599e2024)

Change-Id: I102d6871958a03ca596c7c538c539fcc27a4e14d
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
2013-03-07 15:19:47 -08:00
Wentao Xu
589acb3c40 input: mpu3050: adjust LPF bandwidth according to sampling frequency.
Low pass filter bandwidth is configured to be equal to or greater than
half of the sampling freqency.

Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
(cherry picked from commit 04f4cc9ff3707a39af39c23cc9f3aeb5c344c60c)

Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit a7d8fe1d40061ec56c938308d8f7265f29b146c1)

Change-Id: I796d30d474aa64c1679781b38ca5f151b37c92fd
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
2013-03-07 15:19:27 -08:00
Anirudh Ghayal
45304b0ee6 input: pwrkey: Handle out-of-order press and release interrupts
There is a possibility of receiving a release interrupt
before press when both these actions (press and release) of the
power-key are very close-by (~1-2ms) to the debounce time
of the key. Handle this case by maintaining a state variable.

Also mark the release interrupt as a wakeup source to
wakeup the system when the above mentioned abnormal case
occurs.

CRs-Fixed: 394289
Change-Id: I74475c1e5159dd30e52aca91243eec7e2fac4d57
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
(cherry picked from commit 306e3197b5cc657a62c41823fb6cd03600d35f3f)

Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
2013-03-07 15:18:40 -08:00
Amy Maloche
2dab38962a input: cyttsp-i2c-qc: move to multitouch protocol B
Move from multitouch protocol A to protocol B, and since some
applications are not working under BTN_2 reporting, all the instances
of HAT are removed along with BTN_2 reporting.

Change-Id: I25c9c811078452eb9ff11159d0f45c9e3f831849
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
(cherry picked from commit 94f65fcf5d89b7943777750b2e358c7421f26400)

Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
2013-03-07 15:18:34 -08:00
Ajay Dudani
aa99a90650 input: pm8xxx-pwrkey: Update key press status during probe
Power key could be in pressed state during boot. Set the flag
to track the press status properly by reading press irq status.

CRs-fixed: 404018
Change-Id: I93a8584420002d9cb399484b3ac77fa2ed954690
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2013-03-04 12:47:34 -08:00
Ajay Dudani
93c63d759f input: pwrkey: Handle out-of-order press and release interrupts
There is a possibility of receiving a release interrupt
before press when both these actions (press and release) of the
power-key are very close-by (~1-2ms) to the debounce time
of the key. Handle this case by maintaining a state variable.

Also mark the release interrupt as a wakeup source to
wakeup the system when the above mentioned abnormal case
occurs.

CRs-Fixed: 394289
Change-Id: I74475c1e5159dd30e52aca91243eec7e2fac4d57
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2013-03-04 12:47:33 -08:00
Iliyan Malchev
75f55110dc pmic8xxx-pwrkey: move to subsys_init
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:47:33 -08:00
Dima Zavin
e60b38622e input: keyreset: add support for reset after timeout
If a timeout is requested, a delayed work item will be
scheduled to restart the device. If the keys are released
before the timeout expires, the reset is aborted.

As expected, the reset_fn can be used to reset the device
after the timeout.

Bug: 7344361
Change-Id: I1d77cdb3dcc63f579b1250506f0a30de1e033d67
Signed-off-by: Dima Zavin <dima@android.com>
2013-03-04 12:47:30 -08:00
Dima Zavin
0d90c6ea86 input: keyreset: move init to subsys to be ready early
Bug: 7344361
Change-Id: I3564a354fddd69f352704c9e819ea4538096264a
Signed-off-by: Dima Zavin <dima@android.com>
2013-03-04 12:47:29 -08:00
Dima Zavin
2768c87ae4 input: keyreset: process pressed keys at init
Bug: 7344361
Change-Id: I92c9ec8a7d2882f280af9a5807a6052e54ecc16a
Signed-off-by: Dima Zavin <dima@android.com>
2013-03-04 12:47:29 -08:00
Jongrak Kwon
b56d966c19 mako: touch: PLG137 firmware E027 update
- Fixed issues in production test
  . ghost touch in high and low temperature
  . ghost touch with noisy charger connect
  . sensing test
- Stablized thumb operation
- Fixed flapping finger width report

Change-Id: I350ed94b9bfcb5a8feba3e0c9529ea86472097cd
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:47:08 -08:00
Jongrak Kwon
90b4ddbbc0 mako: touch: PLG137 firmware E015 update
- Improved ghost touch error
- Improved unstable when lifting finger

Change-Id: Icc752c07ad05f5888eff8db4a8064007d3e471f4
2013-03-04 12:45:34 -08:00
Jongrak Kwon
534f09d6e4 mako: touch: preserving touch data coherency
Synaptics firmware maintains internal cache to store a scan of
finger data so that the host reads finger data from this cache.
The firmware updates the cache when the host reads it nonsequentially.

The current driver reads only present finger data, which can cause
unexpected nonsequential access to cache and the cache can be updated
before the host reads the data, resulting in losing finger data coherency.

Modified the driver to access data sequentially even if there are
not present fingers in the middle so that the finger data coherency
can be preserved.

Change-Id: I4b975c2ab2445078f2a81c3dd4ce484002d27933
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:45:33 -08:00
Jongrak Kwon
6ea1f6f413 mako: touch: error checking for firmware update
Corrected not working touch problem when the firmware update was failed or
LCD was turned on or off during firmware update.

Change-Id: Ib61c3d9927d670eb4091253efc71499b88b51b9f
2013-03-04 12:45:19 -08:00
Jongrak Kwon
282302c825 mako: touch: add sys node for charger status update
Will be used to enable noise mitigation bit in firmware
to reduce noise when TA/USA/Wireless charger is connected.

Change-Id: Ia4174271758ca2dbd013b80ddcabffea2e2cae82
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:45:18 -08:00
Jongrak Kwon
fa7ae39986 mako: touch: ignore abnormal touch interrupt
When the touch driver detected an interrupt, it checks the interrupt
status register. If the value of the register is not normal,
such as zero, the touch driver considered it as a problem on the
device and reinitialized the touch device to recover.

This should not happen with normal touch firmware but, the touch
driver also need to ignore this kind of abnormal interrupt
rather than resetting the device, which causing unexpected freezing
during touch operation.

Change-Id: I989a9eab594f34ed9a32cea3e477faed38e32029
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:44:46 -08:00
Jongrak Kwon
42c990ff81 mako: touch: bug fix on report mode setting
There was a bug on setting the report mode, breaking other bit fields.
Due to this, the firmware jitter filter was disabled, causing
some noises. Expect more stable position report with this correction.

Change-Id: I14f48c39f654e5771eaf8b5a2e6a2fd0c713a3ee
2013-03-04 12:44:42 -08:00
Jongrak Kwon
a899208770 mako: touch: PLG137 firmware E009 update
Removed PEN support to make finger operation stable.

Change-Id: Iea1268b91fab51aa100591e359907907ab8adfdb
2013-03-04 12:44:25 -08:00
Jongrak Kwon
93d8e0841c mako: touch: fix the tool type to finger
The tool type checking for pen was incorrect.

Sometimes finger touch produces the same condition as PEN which is
width major and minor are all zero.
This wrong detection change the tracking ID, resulting in two finger
touch report even when single touch is used.

Fix the tool type to finger since mako will support only finger.

Change-Id: I4c7631b77fed677d27d430986d70407af3406aca
2013-03-04 12:44:25 -08:00
Jongrak Kwon
d299bede31 mako: touch: PLG137 firmware E008 update
Resolved touch malfunction when large object,
such as palm, is on the touch device when the system
is resumed by power key.

Noise immunity is also improved.

Change-Id: I020b861a8b1ad909ae7f00aed34de3b6da47367a
2013-03-04 12:44:15 -08:00
ks.kwon
18ccbbdbcc mako: touch: reset_pin control during touch power control.
This commit is to assert/de-assert reset signal during suspend/resume.
Without this commit, there is a 2~3mA of leakage current from reset pin
to touch contorller IC.

Change-Id: I32717412b1dec13996aa986c7939c76dd6453ebb
2013-03-04 12:44:13 -08:00
Jongrak Kwon
9124cb89b9 mako: touch: PLG137 firmware E004 udpate
Noise reduction.

Change-Id: I29a44e0b1a1d2f64acef527177b38b7786492e63
2013-03-04 12:43:33 -08:00
Jongrak Kwon
3a2532eeba mako: touch: support new touch panel (PLG137/0.9T)
Use ARRAYED_TOUCH_FW_BIN feature to support both new(PLG137/0.9T)
and old(TM2000/0.55T) panels with one binary.

Firmware Verison: New - E003, Old - E059 (no change)

Change-Id: Ia96eba137f8a02054eb8067d47dc887edffb9970
2013-03-04 12:43:21 -08:00
Jongrak Kwon
147bdffbae mako: touch: firmware upgrade and resolution change
- Firmware: E052 -> E059 (noise tunning & resolution change)
- Resolution: 1100x1900 -> 1536x2560

Need to reboot the system when abnormal touch work after upgrade

Change-Id: I476180c2a1fa5528fc90d2933072ac01a7e1fd31
2013-03-04 12:43:09 -08:00
Jongrak Kwon
c4a40d73e9 mako: touch: added tool type and touch minor option
- Let the low level driver pass tool type and use it
  (Synaptics: PEN when major = 0, minor = 0, Other: FINGER)
- Split touch major and minor value to choose
  circle vs. ellipse from platform datai
  (Currently defined to support circle)

Change-Id: Ibd79efb5d88843174c45147a4c7ea170632c3fdb
2013-03-04 09:12:26 -08:00
Jongrak Kwon
2809882d5f mako: touch: removed ghost codes and added touch point trace
Change-Id: Id9c060ba8ad12ade442bbc22fac8a0cde0715c41
2013-03-04 09:12:23 -08:00
Jongrak Kwon
d8943732ca mako: touch: disable ghost finger correction
The ghost function sets FORCE_FAST_RELAXATION and
FORCE_UPDATE registers, which cause touch abnormal function
after resume.

Also code clean up for register map initialization.

Change-Id: Ib442d4d7a2e995048fba902fe852a3851fdbf418
2013-03-04 09:12:21 -08:00
Jongrak Kwon
37b9eb8046 mako: touch: use MT protocol type B
- not applied to hard key function, so removed hard key stuff
- jitter and accuracy filter function also changed but not used at the moment
- corrected some wrong error handling in touch_probe and synaptics_ts_probe

Change-Id: I1af3032612cdedbfac9da9c5df17eeb861344226
2013-03-04 09:12:20 -08:00
Jongrak Kwon
3864ba662e mako: touch: upgrade firmware from E032 to E052
Also removed unused firmware SynaImage_Jp.h and
variable name correction.

Change-Id: I1332da88ec4fe5538cd68bace7ca7c701795dce3
2013-03-04 09:12:11 -08:00
Jongrak Kwon
9f216de2ac mako: touch: disable S/W accuracy and jitter filter
The feature has side effects on handling touch event.

Also, resolved divide by zero exception caused by
unused button initialization codes.

Change-Id: I9b1d1f302b9025a0d1d15891e5f320e7c149ae92
2013-03-04 09:12:10 -08:00
Jongrak Kwon
8a8a517fad mako: touch: resolved touch problem after resume
Checking the interrupt pin after reading touch data

Change-Id: Ide8688fed10c228b4bed7947bfccffabd545c5f8
2013-03-04 09:12:03 -08:00
Jongrak Kwon
0b7f6b4498 mako: touch: disable button and clean up
- disable button function
- clean up configuration
- remove unused codes
- remove softkey handlers
- remove interrupt thread (ISR send to work queue directly)

Change-Id: Id8bbf5d554e12a477e402c966b9ef21e1a02d86f
2013-03-04 09:11:54 -08:00
Jongrak Kwon
000adcf065 mako: touch driver merge
- lge touch common driver
- synaptics touch driver integration with lge common driver

Change-Id: I72e53f8d16610155ab1a31a366e33910a41643be
2013-02-28 12:14:25 -08:00
Amy Maloche
8b6e5d26eb input: atmel_mxt_ts: add support for 336S and 1664S controllers
New controllers in the Atmel maXTouch family require support
for new objects, and the addition of their family ID's and
respective reset times.

Change-Id: I3fb9494e7cc88a6b213cbe0310d95fdb4be299aa
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2013-02-27 18:20:49 -08:00
Wentao Xu
5cef0cea29 input: mpu3050: make sample rate configurable, and use interrupt
Required by 8x30 platform

Change-Id: I51b39e1ee5e367fd72151854e3d421538074d6d6
Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
2013-02-27 18:20:32 -08:00
Amy Maloche
19b50fd2c9 tsc2007: Set input property bit to indicate a direct input device
Prop bit is checked in userspace and must be set in
driver in order to be recognized correctly, since it defaults
to mouse pointer.

Change-Id: I5eadfe45baac93b9e315381dcacc5a02c27bc0c9
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2013-02-27 18:18:47 -08:00