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>
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>
Array overflow can occur in firmware_name_store(), if the variable
buf contains the string larger than size of subsys->desc->fw_name
CRs-Fixed: 1050153
Change-Id: Ice39d7a1eb0b5f53125cc5d528021a99b9f7ff90
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
Signed-off-by: Neeraj Upadhyay <neeraju@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>
Update the algorithm applied to open-loop voltage partial binning
values so that it only affects the lowest two fused corners (i.e.
MinSVS and SVS). These values correspond to valid voltages for
the highest two fused corners (i.e. Nominal and Turbo).
Change-Id: Ifa54325a1364f10b6f1760c52ad029612114759c
CRs-Fixed: 1050071
Signed-off-by: David Collins <collinsd@codeaurora.org>
TRB's buffer related memory is allocated as part of gsi_bind() for each
USB GSI interface if it is part of USB compsition (i.e. USB multi config
composition). This memory is never de-allocated (i.e. USB cable
disconnect case) until USB composition switch. Also only one USB tethered
GSI interface is used out of mult-config based on selection of USB config
by USB host. Hence allocate TRB's buffer related memory after set_alt(1)
from ipa_work_handler() and de-allocate same from set_alt(0) OR USB
composition switch OR USB bus suspend with remote wakeup disable case.
Change-Id: I1bdfe16273186b594f83fd03936a461895701996
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Currently USB GSI function driver increments USB gadget device's
pm usage count on set_alt() and decrements on USB bus suspend or
USB cable disconnect case. Current code is not decrementing this
usage count when sm_state is STATE_INITIALIZED and USB cable is
disconnected (i.e. event EVT_DISCONNECTED posted). In this case,
USB doesn't go into low power mode although USB cable is disconnected.
Hence to handle this case make sure to increment USB device's PM
usage count from state machine instead of set_alt().
Also fix one of bug where state machine is peeking event but it is
not deleting same event from queue which shall result into using
same event multiple time in different states.
Use usb_gadget_autopm_get() instead of usb_gadget_autopm_get_noresume()
as noresume variant only increment usage count which is not sufficient
condition to prevent USB to go into LPM. usb_gadget_autopm_get()
increments both usage count and child count.
Change-Id: I667aef9208d14b2dff5944ad6ad9b053797c4ac9
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
In batch mode Venus will be IDLE after sending EBD's and FBD's
to host. Power collapsing Venus at this time can save power.
CRs-Fixed: 1049499
Change-Id: I795d14fd4bc3b5f31897a70009546238117b0825
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
QOS values are programmed wrongly for msmcobalt. This can
affect Venus performance. This change fixes the same.
CRs-Fixed: 1046678
Change-Id: I6d474c2279422abe63ad625f35809fe156e8c465
Signed-off-by: Praneeth Paladugu <ppaladug@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>