In some cases, the jiffies of the wait function can
jump between reads, leading to wrongly detected
ping pong timeouts. Prevent to fail in this scenario
by making sure that the time elapsed during the
wait is valid.
CRs-Fixed: 1048727
Change-Id: I3a1ecc89f379a90d9fdacf0baa9b6c8498bb93fb
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
Set APR to use SMEM for the Glink transport
type instead of smd_trans. SMEM is used for all
Glink transport. The transport smd_trans is no
longer used and use of it as a transport causes
Glink to take a very long time to establish a
connection.
Change-Id: Ie65f79051bfc452c63067c21efcfd9d98429bb15
CRs-Fixed: 1050763
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
Add IPA unit-test framework. The framework supports
definition and execution of tests that are grouped
into suites according to IPA functional blocks.
Debugfs file system is being used as a user interface.
An example test suite is added for reference.
Change-Id: Ide4ed54970c62f6485809c3bd63960536b4ace4f
CRs-Fixed: 1040200
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
In machine driver probe, platform device pointer is assigned prior to
codec registration which might be invalid if wcd9335 and wcd934x sound
card registrations are going on simultaneously. Update the pointer after
sound card registration to avoid null pointer dereference.
CRs-Fixed: 1048402
Change-Id: I315e191227e14e207187673b8efb5401143dec9d
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Add sysfs entries to upgrade the firmware from userspace. Update_fw
sysfs entry upgrades the firmware inside the touch controller only
when the controller's firmware version is lesser than that in
userspace's firmware file. Force firmware upgrade sysfs entry
forcefully upgrades the firmware inside the touch controller even
when the controller's firmware version matches that of the firmware
file in userspace.
This patch is propagated from 3.18 kernel 'commit 580ca1a4437e
("input: msg21xx_ts: add support for firmware upgrade")'
Change-Id: Ib6046de5230c395b48818d01f26eb9394046808b
Signed-off-by: Mao Li <maol@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
When fingers on the panel decrease, release corresponding touches.
This patch is propagated from 3.18 kernel 'commit 24e3a5036d3c
("input: msg21xx_ts: release touch when finger leaves the panel")'
Change-Id: Iafc3a9dda252417fcd06e3d9d24fb73b4d6f8e58
Signed-off-by: Mao Li <maol@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
When clients specify color space information, venus HW
should embed it in the bit stream. This helps to
regenerate original colors when decoded by decoder.
When decoder detects the color space VUI, Venus fills
the corresponding extradata
CRs-Fixed: 1026204
Change-Id: Ie9523558c23a8edc7a7ee058937658dd87ef5b16
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
Signed-off-by: Manikanta Sivapala <msivap@codeaurora.org>
Upon usb composition switch there is possibility of ep0 file
release happening after gadget driver bind. In case of composition
switch from adb to a non-adb composition gadget will never gets
bound again resulting into failure of usb device enumeration. Fix
this issue by checking FFS_FL_BOUND flag and avoid extra
gadget driver unbind if it is already done as part of composition
switch.
Change-Id: I1638001ff4a94f08224b188aa42425f3d732fa2b
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Set USB core clock frequency to recommended value to allow SVS mode
when cable is connected.
Change-Id: Ia452476bd3bb7316a86efd08fed52c54f3efa34e
Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
Add support for setting USB core clock to particular frequency so that
core clock frequency can be passed through dts property.
Change-Id: If9ff41037d22d7be7f09c9468e8d4cc92280a28e
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Initialize param length with user space argument and
check the condition for maximum length in
SND_AUDIOCODEC_EAC3 format.
CRs-Fixed: 1032820
Change-Id: I710c1f743d7502e93989e8cc487078366570e723
Signed-off-by: Surendar karka <sukark@codeaurora.org>
Enable memory latency monitor and governors to vote for higher DDR
frequency on detecting latency bound workloads.
Change-Id: I4a3f415263b94d4eab16de05bbb9843b7bb04113
Signed-off-by: Rohit Gupta <rohgup@codeaurora.org>
Memory allocated with devm_kzalloc() is automatically freed if
the probe function fails and returns an error code. So there
is no need to free cpu_grp explicitly for the failure cases
that might come up after it is allocated. Additionally calls to
devm_kzalloc() must be accompanied by devm_kfree() if memory
deallocation is necessary.
For these reasons remove the kfree(cpu_grp) from the probe
function.
Change-Id: Ic4838fd58d40d283ac301facc64b06813eb3bd7d
Signed-off-by: Rohit Gupta <rohgup@codeaurora.org>
This change adjusts the ot limits in the mdp vbif
for msmcobalt by removing the xin ot limits and
adding the axi ot limits to the mdp vbif.
CRs-Fixed: 1040746
Change-Id: I365976021dcf02fbc3687091371d7d72cb711605
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
Fix to GSI reset stats logic to clear the correct stats per channel
Change-Id: I94ae8c769ec2868a291e75a2f47c85bd8a449937
CRs-Fixed: 1046484
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
IPA driver uses 8k buffers for RX packets as those are aggregated.
If these packets deaggregated in IPA driver, cloned and provided
to clients, later calls to skb_copy() results in creating an 8k skb
which may lead to high memory utilization.
This change avoid the use of skb clones and allocates new skbs
for LAN clients and copy the packet content to it.
CRs-Fixed: 1050670
Change-Id: Iba47db8936b49309360791c1c6b482dcfcffd4d7
Acked by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Use of cpu_suspend is deprecated. Instead use arm_cpuidle_suspend for
32bit systems.
Change-Id: I5c61c970e17cba44c555e60418a9ece80c61488f
Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
Synchronization is required because bind/unbind can happen in two
different contexts. For example, function unbind due to
unregister_gadget_item can race with bind which is initiated from
sysfs.
Change-Id: Iec93a9d4cb2a10b833cbba0d5256b64161147de2
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Release the lock before unregistering gadget item.
Unregistered gadget item will result in unbind call back
to the driver which may use the same lock and resulting
in deadlock condition.
Change-Id: I2f8fba73a831d3bb711fe9310c5758221359819e
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
GDSC regulators in case of 'qcom,skip-logic-collapse', would require block
assert/deassert of the clocks. Add support for the same to use the reset
controller APIs.
Change-Id: I83651b3b3515e0923d7431cfe8b70e6059b51067
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Add the block reset clocks which will be used by clients to
assert/deassert these clocks using the reset controller framework.
Change-Id: I3e9f7f85bf1faf0e1bb501196ba9d7e197111a03
Signed-off-by: Taniya Das <tdas@codeaurora.org>
A reset signal is associated with each clock branch but sometimes a reset
signal is associated with a handful of clocks. Either way the register
interface is the same; set a bit to assert a reset and clear a bit to
deassert a reset. Add support for these types of resets signals.
Change-Id: Ic9d00c0a03507a55ca6c96f977a6ddf55b4b5db7
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Change BCR value for IPAv3.1 according to updated value from HPG.
Add IPAv3.5 to receive BCR initialization according to HPG.
CRs-Fixed: 1051371
Change-Id: If2a7eaf11ad05ced3c52ff87be934745b7dc713b
Signed-off-by: Amir Levy <alevy@codeaurora.org>
Check input parameter range before using it to access
array elements and check pointer value before
dereferencing it.
Change-Id: I702b4ff11582047b00e3f0d5433d29c84f34e913
CRs-Fixed: 1048706
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
Hardware characterization has shown that some parts require
higher voltages in order to operate consistently. Increase
the ceiling voltage for all corners so that they are able to
operate at higher voltages. This applies to all CPR revisions
except 0.
Change-Id: Ie9d4e825e5c6040036642cdaf22d1f67b6129685
CRs-Fixed: 1050071
Signed-off-by: David Collins <collinsd@codeaurora.org>