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>
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>
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>