Media and USB Video Class drivers are needed to get USB video
devices functional in USB host mode. Hence enable media and USB
video class drivers on Lahaina.
Change-Id: I70ccc146b55a564b4408496a54b044d52cbf9e41
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Enable memory dump driver to be build as a module in the defconfig
on Lahaina.
Change-Id: I284e5d082d5a595f794b15fd66163137596e714e
Signed-off-by: Mao Jinlong <jinlmao@codeaurora.org>
Add support to build the memory dump driver as moudle on gki build.
Change-Id: I8cf227d0b0044b935bbf224d1191ec84fa497509
Signed-off-by: Mao Jinlong <jinlmao@codeaurora.org>
With the exception of control event ring processing, turn
the non-essential error messages to log variants so they
do not show up in dmesg.
Change-Id: Ib49022b25817d8d65dd10d33c4a948698c571082
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
Block layer RPM is enabled for the genernal UFS SCSI devices when they are
probed by their driver. However block layer RPM is not enabled for UFS
well-known SCSI devices.
As UFS SCSI devices have their corresponding BSG char devices, accessing
a BSG char device via IOCTL may send requests to its corresponding SCSI
device through its request queue. If BSG IOCTL sends a request to a
well-known SCSI device when hba is not runtime active, due to block layer
RPM is not eanbled for the well-known SCSI devices, hba, which is at the
top of a scsi device's parent chain, shall not be resumed, then unexpected
error would happen.
This change enables block layer RPM for the well-known SCSI devices, so
that block layer can handle RPM for the well-known SCSI devices just like
for the general SCSI devices.
Change-Id: Ie4c5c4876f8500c285166a5f7be87a2157a12df3
Signed-off-by: Can Guo <cang@codeaurora.org>
On Lahaina, both VDD_GFX and VDD_MMCX support LowSVS as the minimum
non-OFF level. Therefore regulator_set_voltage() calls are redundant
and can be safely removed.
Commit f8702f9e4a ("regulator: core: Use ww_mutex for regulators
locking") introduced a call to mutex_lock(®ulator_list_mutex)
inside of regulator_lock_dependent(). This additional locking allows
deadlock to occur for regulator devices whose regulator_ops callback
functions internally call consumer regulator framework API functions
(e.g. regulator_enable(), regulator_disable(), or regulator_set_voltage()).
For short term remove all regulator_set_voltage() calls in the
gdsc-regulator driver as a short term partial workaround for regulator
framework deadlock issue.
Change-Id: I36dff589fe51ea4c932c310b7290a45b21f77992
Signed-off-by: Vivek Aknurwar <viveka@codeaurora.org>
Add QTI implementation for variant ops required for inline
encryption with wrapped key support. These include UFS
crypto ops and KSM ops.
Change-Id: Ica930a8a806a78d4c2d074639cbed355b895a459
Signed-off-by: Gaurav Kashyap <gaurkash@codeaurora.org>
Input Current Limit (ICL) needs to be set only for SDP and not
for other charger types. Add that logic.
Change-Id: Ib48acf5666ea4190b7a11c27ab9cefbb534632fb
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Driver defers processing of BW scaling event if PM state is not in
M0. This delays the BW scaling to take effect. Fix this issue by
resuming the device if it was suspended state and assert wake DB.
After changing the BW of the link de-assert the wake DB.
Change-Id: Ibf827912a4de71d14f461382c28080157c65d6e0
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
We are incorrectly using the default pagetable for LPAC when per-process
page tables are disabled. Create a separate pagetable for LPAC.
Change-Id: I93b9c764fe91260b8b27c9b2d847429d1595a839
Signed-off-by: Raghu Ananya Arabolu <rarabolu@codeaurora.org>
In many cases display panel information may not be available when the touch
driver is being probed. This change defers the probe if the panel is not
found to ensure that the correct touch driver is probed.
Change-Id: I12d1dd3678a85baa468b332d61be4ba9ce81db43
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
PCIe1 and PCIe2 default clock structure needs to have same
clock order as PCIe0. Update the order of PCIe1 and PCIe2
to be the same as PCIe0.
Change-Id: Icefb0f85e301cb3ba9ee4c07d01cf4110137d489
Signed-off-by: Tony Truong <truong@codeaurora.org>
Enable the Embedded USB debug driver as a module on GKI
builds for Lahaina platform.
Change-Id: I8cd9e94153c08848c4afeb2fb5e24f0ffc81e3e6
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
Adding new vendor id and product id to
support additional hardware.
Change-Id: I777568f1a68b15345695e09d2ad89e9230508886
Signed-off-by: rbandi <rohitbandi@codeaurora.org>
Adding new vendor id to support additional hardware.
Change-Id: I9b37b4dfe0c205428d235ffe1e5f8d8ebe918998
Signed-off-by: rbandi <rohitbandi@codeaurora.org>
Enable hung task detection for Lahaina platform to detect the
tasks that are stuck in uninterruptible "D" state indefinitely.
Change-Id: Ieb18c8452b3643c57d11ba697a359d5beb7d7255
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
khungtask by default monitors all tasks for long unterruptible sleep.
This change introduces a sysctl option, /proc/sys/kernel/
hung_task_selective_monitoring, to enable monitoring selected tasks.
If this sysctl option is enabled then only the tasks with
/proc/$PID/hang_detection_enabled set are to be monitored,
otherwise all tasks are monitored as default case.
Some tasks may intentionally moves to uninterruptable sleep state,
which shouldn't leads to khungtask panics, as those are recoverable
hungs. So to avoid false hung reports, add an option to select tasks
to be monitored and report/panic them only.
By default, enable the feature always to monitor selected tasks.
Change-Id: I48cd8cfe73dbe2b577541fe9607190eac5556bb2
Signed-off-by: Imran Khan <kimran@codeaurora.org>
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
[sramana: Resolved minor merge conflict]
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
[rananta: Resolved compilation errors]
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
Driver continues handling of MSI0 interrupt even if MHI register access
is not allowed. By doing so it calls the status call back and performs
early notification for the MHI client. This is not needed when MHI register
access is not allowed. Hence skip the handling in this case and return.
Change-Id: I4639cedfd45166f28379539bccb25acd383faca5
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
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>