Remove the use of global variable from ITE tech touch driver,
and use the internal driver structure passed as function argument.
This change makes the driver complied to kernel coding standards
and similar to other touch driver.
This is a propagated patch from 3.18 patch 'commit 041f90ddeb5e ("input:
touchscreen: remove global variable from ITE tech touch driver")'
CRs-Fixed: 982219
Change-Id: Ib609d6e76ea70cd3b49c4ea6f09c75bf52521aa8
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Identify the ITE tech controller until it is ready to do any
i2c transaction. This is needed for dynamic detection and to check
if ITE tech controller is connected or not.
This is a propagated patch from 3.18 kernel 'commit eb37d1174948
("input: touchscreen: identify ITE tech controller until ready")'
CRs-Fixed: 980427
Change-Id: I9f69eb541e31de6a04db7468ca12a04a837d2b40
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Correct the return value check of kstrtoint function.
Also correct the platform_data parsing check in ITE tech
touch driver.
This is a propagated patch from 3.18 kernel
'commit 9a1496537aeb ("input: touchscreen: correct condition checks
in ITE tech touch driver")'
Change-Id: I792c043ca4d85e236c209605e80392a05d26b983
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Don't allow ITE tech driver to check the status of the controller forever
before any i2c read/write, instead make it to 10 times only.
In case of firmware flashing and external calibration features, this is
made to 500 times.
This is a propagated patch from 3.18 kernel
'commit 5e8c98c6705b ("input: touchscreen: don't allow ITE tech driver
to do infinite i2c checks")'
Change-Id: I88e024700de43cc9f712fd7fa509fcb387f9cd21
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Before doing any i2c read/write, driver needs to check the value
of QUERY buffer to know if the controller is in ready or busy state.
Sometime, it takes more number of checks to know the status.
So this change increases the number of checks to know the ITE tech
touch controller status.
This is a propagated patch from 3.18 kernel 'commit 60589278b8e7 ("input:
touchscreen: increase number of checks for touch controller status")
Change-Id: I30dd0cf0b15538e67f50725754d5059e2fe721d0
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
During playback, enabling smart boost feature changes the threshold
of the playback signal based on the amplitude of the signal without
clipping the signal. Change enables smart boost on WCD9340 codec.
Change-Id: Ic4c5e3cc071898f376070b853112c5014d61272c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
WCD9335 codec has single master clock supply widget for both
playback and recording paths. Adding separate clock supply
for playback and recording paths will help handle low power
audio recording usecases without affecting playback usecases.
Change is to enable separate clock supply widgets for playback
and recording paths.
CRs-fixed: 1022917
Change-Id: I3978d2c53f2b04104d9d279f8acad60326f9405c
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Export API for getting SOC serial number so that other modules
can use it.
CRs-Fixed: 1050491
Change-Id: I24f735159a38dffdc4f44babacc4d758cd0a8365
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Initialize the return value before it is used in the driver to
make sure valid return value is returned.
CRs-Fixed: 1050136
Change-Id: I3e2c524ac87d57ae33cd0f28b9c62b2a39ee79ad
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
The set_rate requests from the display port clocks should always
make their way upto the DP PLL. Add the NO_RATE_CACHE flag to
clocks in that path in order to let this happen.
CRs-Fixed: 1050007
Change-Id: I6a848b04756b92f9b1149705176e8f4088b2a945
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
Ensure we don't try to call online/offline functions with a
null-pointer.
CRs-fixed: 1049957
Change-Id: I6fa8f9bde5d5fd0680b5c571ba3cc99bd1f508b1
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
Re-enable QTAGUID so that bandwidth control is possible from
userspace now that stability issues have been resolved by
picking upstream commits.
Change-Id: If3b0be88f28da82a08dc4cc67006e8ee8ced5a72
CRs-Fixed: 1035969
Signed-off-by: Bryse Flowers <bflowers@codeaurora.org>
Register a notifier callback with the power_supply framework
to detect when the bms power_supply is available so that
it can be used to query the battery properties required from
the fuel gauge for the maximum current query algorithm.
CRs-Fixed: 1043718
Change-Id: Icd535025a2f888e188f89841f32ac5b822f9b20d
Signed-off-by: Devesh Jhunjhunwala <deveshj@codeaurora.org>
Code clean up that makes the driver more like a linux driver.
Add some error recovery to make sure driver will not crash when
error is occurs. Also have cleared the checkpatch errors on 4.4.
This patch is propagated from 3.4 kernel 'commit c2fcdcda743f
("input: touchpanel: Goodix GT915 driver cleanup")'
Change-Id: I3af425f5f0251ec576168f72a2059f85c3be4358
Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
[abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel
- check for sizeof(p_cfg_grp)/sizeof(p_cfg_grp[0]) that could
be ARRAY_SIZE(p_cfg_grp)
- check for sizeof(touch_key_array)/sizeof(touch_key_array[0])
that could be ARRAY_SIZE(touch_key_array)
- Comparisons should place the constant on the right side
of the test]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>