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>
Add device tree support for focaltech controller driver.
The data is represented in device tree format and parsed
by the driver using of framework apis.
This patch is a propagated patch from 3.18 kernel
'commit 83310a9a151e ("input: ft5x06_ts: Add DT support")'
Change-Id: Ibcdd8c3579f401ac0632d670e1b7c674aa67ba8d
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
[abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel
struct of_device_id should normally be const]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
Update TLMM base address to match new address.
Change-Id: Ie0c46cbbcbc3edabd5e0f867b4393a27e55db9f5
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Update TLMM configuration for msmfalcon, to match new
HW definitions.
Change-Id: I61d99454dab2fa90b4ed6577d1a58685088eb968
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Add SDC1 related pin configuration and update addresses for
SDC2 pins, to match TLMM addresses in new HW definitions.
Change-Id: If39ad62cc591565793cd1d8a0f2a454e0b7d5c58
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Add psci node in msmfalcon device tree to have
support for PSCI.
Change-Id: I5d0cb3fcc711d22eada0983b6b660da7be1d9a3e
Signed-off-by: Srinivas Ramana <sramana@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>
Mstar reference driver is being cleaned up to be checkpatch
compliant. Add Kconfig and Makefile changes to enable Mstar
driver's compilation. And following new features are added to
the driver:
1. Pinctrl support
2. Threaded irq support
3. Release all touches in suspend
4. Protocol B compliance
5. Explicit suspend/resume function
6. Configure gpios in suspend/resume function
7. Add device tree parser function
8. Add dtsi support for gpio, regulator, I2C address, display coords
This patch is propagated from 3.18 kernel
'commit 091a01709e12 ("input: msg21xx_ts: update mstar
driver to enable msg2138A")'
Change-Id: Ic49a18de64ec210a0636405394ba7a8f52f336a9
Signed-off-by: Mao Li <maol@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
[abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel
- Block comments use a trailing */ on a separate line
- Comparisons should place the constant on the right side of the test
- struct of_device_id should normally be const
- DT compatible string vendor "mstar" appears un-documented]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
Device crash is observed for consecutive SSR's triggered during WFD
playback. This is due to callback functions registered by afe client
aren't reset during the first SSR and the same callback functions are
being used for the next SSR event, resulting access in freed data.
Fix this issue by resetting the callback functions during SSR.
CRs-Fixed: 1045045
Change-Id: Ib651dd59b30e4924f4e199cfd4fae64df6030d9d
Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>
Modified condition to ensure data is read
only after interrupt has occurred.
Spurious interrupt handling is done in nfc_read
instead of irq handler.
Change-Id: Ie2362610fe922e792e6358b4386c828fdd754fa8
Signed-off-by: Gaurav Singhal <gsinghal@codeaurora.org>
When display is turned off, ensure that the lcd mode selection GPIO is
set to output LOW. This would prevent any current leakage from that GPIO
whenever display is off.
Change-Id: I91f636b2c1cc1890b4ca28f52e5190561bc5d927
CRs-Fixed: 1050785
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
Introduce a flag to know if modem is restarting from cold boot or from
SSR.
Use this flag to decide if modem memory needs to be assigned back to
linux. After cold boot linux already owns modem memory and trying to
assign it back from modem is incorrect.
CRs-Fixed: 1050153
Change-Id: I1c1ef35ea7ef6c2552a22b85c5af260ade413777
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
Decoder YUV buffer size should be derived based on current
resolution using Venus MACROS. This the only size that
clients are aware of. Using the size from FW will make
buffer sizes mismatches and unnecessary failures.
By not using buffer size from Venus, driver can avoid
unnecessary buffer requirement calls. This will reduce the
start-up latency.
CRs-Fixed: 1011881
Change-Id: I90762967e8b7888a775ce4771b6cdb08528b6513
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
Import batt capacity status from bms, and notify userspace.
CRs-Fixed: 1048135
Change-Id: I76357e44452a8c16fe96df47af06ddab021c8f3f
Signed-off-by: Harry Yang <harryy@codeaurora.org>
FM audio playback is failing as the loopback mode
is hardcoded to EC mode which is incorrect for
FM audio playback usecase.
Change it to default loopback mode.
Change-Id: I36b60ba2283b0bbe36f492e1410603b8c2050cc4
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
Add support to compile vidc driver as a
Loadable Kernel Module on msmcortex.
CRs-Fixed: 1043199
Change-Id: I6aaa1c2a277b5ccde25bbae6e0f452ea7bf578ab
Signed-off-by: Arun Menon <avmenon@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>
Update TX power for countries Dominica, Dominican Republic,
Egypt, El Salvador, India, Israel, Kuwait, Malaysia,
Morocco, Namibia, Panama, Russia, Saint Kitts, Saint Lucia,
Tunisia and Uzbekistan.
CRs-Fixed: 1049984
Change-Id: I6dda3b5e8b314d392e51f492b23ce0342e47800a
Signed-off-by: Amar Singhal <asinghal@codeaurora.org>
Integer overflow check always fails when ULONG_MAX is used,
as ULONG_MAX is 2^64-1, while req->data[i].len and total
are uint32_t. Make change to use U32_MAX instead of
ULONG_MAX.
CRs-fixed: 1046507
Change-Id: Iccf9c32400ecc7ffc0afae16f58c38e5d78a5b64
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
DMIC clock on ECPP(Echo Cancellation Ping-Pong) hardware path
can run at lower clock rate to avoid power consumption. Select
ECPP dmic clock rate when decimator is connected only to ECPP
path.
CRs-fixed: 1022917
Change-Id: I968e1fe6b099ebf5334eadb209219181293b207f
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
DMIC clock on ECPP(Echo Cancellation Ping-Pong) path can be set to
lower clock rate to avoid power consumption. Change configures the
DMIC clock rate on ECPP path based on device tree settings.
CRs-fixed: 1022917
Change-Id: I03e1a7f5ef3cf1b1907c03a3d38965ce3a611bc4
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Vidyakumar Athota <vathota@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>
Enable G-Link SPI Transport driver to enable off-chip communication
over SPI bus.
CRs-Fixed: 1045916
Change-Id: I268d96f04b034edad2fadea8ef2c14fe8d8de251
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
G-Link SPI Transport is used to communicate with external audio codec.
Add G-Link SPI Transport device to support that configuration.
CRs-Fixed: 1045916
Change-Id: I97ca857c21d8873574a180d289e2fbca29c8a891
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
GLink SPI Transport enables point-to-point communication with an
external subsystem that uses SPI bus to interface. This enables
multiplexing multiple logical channels over the SPI bus.
CRs-Fixed: 1045916
Change-Id: I1936bb0542bcd531726bf987ef806969ce96d498
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
During service locator call there is a chance in which
resp message is used or freed while uninitialized.So to
prevent it initialize the same with NULL.
Change-Id: I65f854e184606684ce2ca711f19cf61d26c1ecb5
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>