During fast suspend/resume, the power management states in MHI
can change to any error state. Allow for it by re-checking and
handling it such that pm states are not lost or over-written in
the process.
Change-Id: I264ae096d20b9752837624dc3a4b3ea6131ad9a6
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
Some low priority event rings operate on a fast forwarding
mechanism where only the latest event is processed and the rest
are skipped. The recycle API only handles updating the
context write pointer in sequence which causes an out of bounds
doorbell issued to the device due to mismatched values. Add
another API to support handling updates for context write
pointer separately with the fast forwarding use case.
Change-Id: If628b49e063d14920fe734ebd113c9c4c733204b
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
Prioritize handling of forced suspend/resume cycle at mission
mode entry and disable boot logger channel after the cycle has
completed to avoid race conditions.
Change-Id: Iddc3d560fa687399434cc8ad51c08509ddfadf70
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
Fix freeing the background memory pool to avoid kmemleak as
part of freeing the memory pool.
Change-Id: I29c9d972295900bd0b97c8ab8ee73d668e05a59f
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
Upon external soc power down mhi controller context pointer
is set to NULL. If debugfs query is issued at that time it
results into NULL pointer dereference. Fix the issue by adding
a NULL check in debugfs show callback for event and channel.
Change-Id: I8c947bc6c42e80c625bf06c17e73368d2195a2bb
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
If time sync is requested by user space when endpoint is shutting
down dev_wake count gets incremented. This is causing assert when
shutdown API checks the dev_wake count and it is still non-zero.
Fix this issue by protecting time sync API and removal of time sync
under tsync_mutex. This helps to take care of a race condition when
time sync is requested while time sync remove in progress and also
makes sure that dev_wake count becomes zero when time sync remove
is done to prevent assert condition.
Change-Id: I4e758611613e541537dd900306aa81dd3b4a9f3a
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
If extcon handler is present and dpdm regulator is absent, current
code starts USB state machine without checking usb role switch status.
This results into USB PHY being reset while ADSP firmware is performing
charger detection. This may result into wrong/invalid charger detection
instead of SDP causing no USB enumeration. Fix this issue by checking
usb role switch status before kicking USB state machine.
Change-Id: Ic25083a74ac867eeb3869588c3060e6bf05e4007
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
The load bit value used for RBBM_PERFCTR_RBBM_0 is incorrect.
Correct the load bit so that the saved value is loaded into the
desired counter.
Change-Id: Id0c8cb65061ce061ae342f62576ea020553e0f80
Signed-off-by: Puranam V G Tejaswi <pvgtejas@codeaurora.org>
Enable support for prioritizing the tasks which are killed by the OOM
killer in order to ensure that higher priority tasks (oom_score_adj < 0)
aren’t killed unless there are no other low priority tasks to consider.
Change-Id: I32a82c65146a3c9679e5e7f69ce36aaf1de9155a
Signed-off-by: Liam Mark <lmark@codeaurora.org>
IPA driver moved to techpack. Remove IPA and GSI folders
from kernel. IPA framework layer replaces IPA driver in the
kernel.
Change-Id: I7a46345db4e2bc6e68f7633dfb4ff8fec5d62668
Signed-off-by: Amir Levy <alevy@codeaurora.org>