With commit a3a3c169dd ("icnss: Prevent power collapse during
driver probe/remove"), NULL pointer dereference happens in probe
because of recent changes in the function. Fix the issue by using
right pointer.
CRs-Fixed: 1061279
Change-Id: I464579953fabe1bd42ced50f0bbfdfd3cda0a492
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
With the recovery changes, if modem is brought down without FW
ready but WLAN driver is registered then shutdown call back is
called. This causes stability issue.
Make sure not call the shutdown call back if driver is not
registered. Also listening for PD notifications are enough even
for Subsystem restart so changing the quirks to take care of it.
CRs-fixed: 1061734
Change-Id: Ic5d1a38dfb6ea3e255424af135e2afbe47d1fc18
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
Race condition observed during driver probe/remove and
suspend/resume because suspend/resume is not serialized
to work queue. Fix this problem by holding a wake lock
during wlan driver probe/remove to prevent system
suspend/resume.
CRs-Fixed: 1061279
Change-Id: Iad1c9abbdbaea21d4c55d64a6c120d3bcf0df1eb
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
WCSS may take upto 400us to get out of retention. Fix the polling
logic to wait for more than 400us before proceeding with the
reset sequence.
Also do not send mode request to firmware during recovery.
CRs-fixed: 1060725
Change-Id: Id19518a12fe8a0acffd725b25dbcb0240bdbf446
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
Add support to enable WDI 2.0 interface on IPA version 2.6.1
which is used in falcon.
Change-Id: Id6460f21245808b739ad215fe8073ae7cae8422c
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
fd(s) cannot uniquely identify buffers queued by cross-process
clients. Use ion handles to compare and match already-mapped-
buffers irrespective of data or extradata planes.
CRs-Fixed: 1060416
Change-Id: I591f18aa225cc6690bf423f2ae5bc7dafd4dad78
Signed-off-by: Praveen Chavan <pchavan@codeaurora.org>
Newer QCOM UFS host controller doesn't need to execute
the special LPM mode configuration when switching to SVS2
mode. This change looks at the host controller version
to bypass this special configuration for newer controller
version.
Change-Id: Ib84663955c0c0db6124819c4c4749e5c347a3495
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
New version of phy-qcom-ufs-qmp-v3 supports 2 lanes,
this change adds the config table to enable 2 lanes.
Change-Id: Ie916e7090d3660711159b886c27ee3709891ef2b
Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
When event needs to be processed synchronously, event posting
thread waits for the completion. After completion, result from
the event work is retrieved and event buffer would be freed. But
if waiting thread gets interrupted then wait_for_completion API
returns failure and it also frees the buffer posted for
processing. Event work queue may accesses the freed buffer and
crash the system.
Fix the issue by properly synchronizing event buffer free between
caller and event work by checking for return value of
wait_for_completion.
CRs-fixed: 1057180
Change-Id: Ic3968fd4c0232da6bc9a97d94376f540f62bd2e6
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
Enable CoreSight abort for msmcobalt. CoreSight driver will
dump any trace present in the current sink in case we hit a
kernel panic, user fault or an undefined instruction.
Change-Id: Iff2fdfb547617425182429d95fb1d3b9a2e4321f
Signed-off-by: Satyajit Desai <sadesai@codeaurora.org>