Add constants for voltage levels: LOW_SVS_D1, TURBO_L2,
SUPER_TURBO, and SUPER_TURBO_NO_CPR.
Change-Id: I0ef80f3d0d45df259ba24a8b942538b706b07ede
Signed-off-by: David Collins <collinsd@codeaurora.org>
Read calculated cmacs on SUBSYS_AFTER_POWERUP event.
Allow user space to get the calc cmac regardless of ioctl.
Change-Id: I91d87c657a2217f467d3630e0dce41c98497d8bd
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
With hwscheduling, we need to communicate the preemption parameters
to GMU. Also, we need to use GET_VALUE hfi packet to get the
number of preemptions since last SLUMBER exit.
Change-Id: I2ab342817a3cea4e1d1797369aa272895730357b
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
This paves the way to hook preemption sysfs nodes to hwscheduling
which need to talk to GMU when changing preemption parameters
via sysfs.
Change-Id: I6940dbf294ad71a18b2dcded207cbacf18ba661d
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Send the HFI feature control packet to the GMU in order to enable
preemption.
Change-Id: Ic00e3943bceb29feb28740dbadd3fb7c6fdc562b
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
This is to allow GMU to request secure gpu global buffers.
Change-Id: Iacef726ee3abe02b56178f475ebe9835649a868c
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
The result of GENMASK needs to be inverted so that the
handler doesn't report OOB bits as unknown bits.
Change-Id: I3e39334a6dd79343109591b043c9aa30a8bdff9d
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
With hwscheduling, the flags are requested by GMU outside
of kgsl domain. Printing these flags helps to know the flags
as requested by GMU.
Change-Id: I71d19ead02e115c0a4ead9861de9afd2a0dd2608
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Say a context has only one submission i.e. it has only one dispatch
job. And say gpu encounters a fault and sets dispatcher fault. The
dispatch job will be free'd and post recovery, the context will never
get to the ringbuffer until it queues another submission. This behaviour
holds true in cases where dispatcher is halted for example during
suspend. So in either case, add back the job the the dispatcher jobs
list to make sure the job is not lost.
Change-Id: Iec0a0abfbdcf2535d7f82ec1e286581e1c93a3ea
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
To help debug, enable serial console for GKI
images.
Change-Id: Idfa6803b71bc19625875e0ae1bb2b93295760010
Signed-off-by: Ashish Bhimanpalliwar <abhiman@codeaurora.org>
For rimps_log and qcom_rimps platform driver does not
support the manual bind / unbind feature through sysfs,
Suppress the bind / unbind calls using driver attribute.
Change-Id: I9734d62e19ef16b01039757a92ef2489baea91b3
Signed-off-by: Santosh Mardi <gsantosh@codeaurora.org>
Correct the idle task check, to be done on 'next'
task, instead of current task, while registering
current task's stack.
Change-Id: I8c4fde434b3eca0543c5748234ebabbd40da8672
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Add SOC ID to support socinfo for Yupik SOC.
Change-Id: Ie552bdff85f9ada478b3e102addc365e624c310c
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
In some cases issuing end_transfer command as part
of remove requests to eps is taking around 2ms for
the endpoint command complete interrupt(EPCMDCMPLT).
And before EPCMDCMPLT interrupt driver has already
unmapped the request which controller may access leading
to SMMU fault. Fix this by adding delay before giving
back the requests to gadget driver.
Change-Id: Iba10f5337a43c5f7db702321f6dce3b5e1b1af44
Signed-off-by: Pratham Pratap <prathampratap@codeaurora.org>
It is required to SET block doorbell to GSI to avoid USB wrapper
from ringing doorbell before queuing stop xfer command to GSI
endpoint as part of stopping controller and CLR block doorbell to
GSI after queuing start xfer command to GSI endpoint.
Since ipa_work_handler runs in workqueue context there is a possiblity
that CLR block doorbell will happen even after run/stop is
cleared which may lead to SMMU fault. Avoid this by adding a check
for pullups_connected before clearing block doorbell.
Change-Id: Iedb8a96da197834169bdabae6381c974d50c95de
Signed-off-by: Pratham Pratap <prathampratap@codeaurora.org>
Enable CONFIG_KPROBES_DEBUG for holi to enhance debugging.
Change-Id: I9737cd61526685627031e4edaf7d7cd5e36de706
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
Some controller hardware, such as DWC3, need a minimum delay
between removing and re-applying the pullups in order for the
host to properly detect a soft disconnect and for subsequent
re-enumeration to succeed. Keep track of the last time run_stop
was updated and delay if necessary so that enough time will
have elapsed before calling run_stop clear/set again.
Change-Id: I8ca13304edf4c9fcc3093a063a6004bd8b76ed44
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
A spinlock recursion happens if fsm state is dumped in irq
context. Only dump the fsm state in task context.
Change-Id: I73f38607b97ddb693c9bd1c885ffe6b297dc9aea
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
If worker is not processing packets on control port fast enough,
socket buffer may get full and result in drop of control packets.
Creating dedicated worker thread to process control packets.
CRs-Fixed: 2763561
Change-Id: I4585015cef2a507a9ba13014cd93f40e60f8a25a
Signed-off-by: Deepak Kumar Singh <deesin@codeaurora.org>
This change is to ensure that modem notifier callback for
icnss2 driver gets called before it gets called for IPA.
In one scenerio, wlan driver holds rtnl lock before
trying to send WMI message to wlan fw, During same time
watchdog bite happened on modem and IPA received modem
notifier callback. Here IPA is also trying to hold rtnl lock
which is held by wlan driver which never got released as driver
is not aware of watchdog bite on modem. In this case
icnss driver is not getting modem notifier callback.This
change ensures modem notifier gets called for wlan first
and rtnl lock held by wlan driver gets released.
Change-Id: I9effd300f6b22138baec59a03a9c4bceb87a8130
Signed-off-by: Sandeep Singh <sandsing@codeaurora.org>
While rpm driver flushing messages in lpm mode, use
rpmsg_trysend instead of rpmsg_send to avoid the dump stack.
qcom_smd driver is going to sleep when tx ring buffer is full
if rpmsg_send is used while flushing. rpm-smd is using spinlock
while flushing the messages. Under spinlock it should not go to sleep.
dump stack is shown because of this. Use rpmsg_trysend to avoid
showing dump stack.
Change-Id: I02ac6c273d49bbfd329c1be9820c53f637052b41
Signed-off-by: Prasadarao Durvasula <pdurvasu@codeaurora.org>
Signed-off-by: Sivasri Kumar Vanka <sivasri@codeaurora.org>
As rpmsg takes care of locking when sending data, this patch
removes the redundant locking by removing the smd_write spinlock.
Also this patch reverts the 'commit 808861b856d1 ("drivers: rpmsg:
fix to avoid dump stack in rpm-smd driver")' which is not required
after removing extra spinlocks.
It removes the unsed smd_read spinlock aswell.
Change-Id: I7b15d19add2c4da876aa127be233331b58d3c8ae
Signed-off-by: Raghavendra Kakarla <rkakarla@codeaurora.org>
During shutdown/sleep putting vdd-io in LPM mode after sending the
Poweroff notify command is leading to OCP.
Avoid putting vdd-io in LPM mode during shutdown/sleep.
This change is inline with earlier kernels.
Change-Id: I08698bc8b4f1c420910747b6374485f6265d553b
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
Remove support for CPUSS clocks as these clocks are
not required to be controlled from HLOS.
Change-Id: Iad004f3bfddddfa7cead7cfeab2f9e52c69a7f01
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
Add snapshot of QPIC nand driver and it's supported files.
This is a snapshot of the QPIC nand driver as of kernel msm-4.14
'commit 5cc17e2cfb19 ("mtd: msm_qpic_nand: Disable Pagescope on
sdxprairie")'.
Change-Id: I994f4432ddd417743a1d7bf27b57755adc90b702
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
The current design sleeps unconditionally in TX FIFO full case and
wakeup only after sleep timer expires which adds random delays in
clients TX path.
Avoid sleep and use READ_NOTIFY command so that writer can be woken up
when remote notifies about read completion by sending IRQ.
Change-Id: I1b44df0ec437d4e76aff181470fcf4cafbdd098a
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
Signed-off-by: Jay Jayanna <jayanna@codeaurora.org>
add a debugfs interface under /sys/kernel/debug/iommu/capturebus
to support capture bus for smmuv500.
Change-Id: Ibf2a2daf87941387c1b3f990f05d86a1cd4dbfff
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
[guptap@codeaurora.org: refactored implementation]
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
Access to MSI registers requires PCIe clocks to be ON. If any
pcie client driver tries to disable PCIe MSI provided by the
controller then that can result in unclocked access. Fix it
by restricting access during drv_suspend. For non drv_suspend
or pm_suspend it is already handled.
Change-Id: I4db72ce22773f0b6b52c9e704c9ec9a3a1de3d8c
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
Initialize the sum fps calculation to avoid the value keep
increasing.
Change-Id: I826c88f7e75d318e2b328e8a525afb44511fb662
Signed-off-by: Ronald Karyodisa <ronaldk@codeaurora.org>
Implement dump_vendor_registers host operation to print the
vendor specific registers in addition to standard SDHC
register during error conditions.
Change-Id: Id0b322d0c7bf229c86dd9b290fcfc37208a4eafe
Signed-off-by: Sahitya Tummala <stummala@codeaurora.org>
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
In case of bad SD card recovery fails everytime.
Also some SD cards fail on Read/writes but can get initialized
successfully.
Mark card as removed and gracefully remove by calling
mmc_detect_change. Also mark the card as corrupted and return
to avoid reinitialization as sdhci_get_cd will return non zero as the
card is physically present and avoid mmc_rescan from proceeding ahead.
Change-Id: Id4c99d4608ef2b5f49cf5ac796a2aaf6d12a56c2
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
While switching from hs400 to hs200 mode, high speed mode
timing should be selected in the device before changing the
clock frequency in the host. But current implementation,
(mmc_hs400_to_hs200) first updates the frequency in the host
and then updates mode in the device. This is a spec violation.
Hence update the sequence to comply with the spec.
Change-Id: I0694edac9dd005ec68add9cc38bbe6fa4245ed48
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
Add yupik target support as irqchip and module.
Change-Id: I4933690d5225824026d0da1930943068cc93c48f
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
Add snapshot of smb1390 charger driver as of msm-4.19
'commit 76a3eb924c55 ("msm: ipa: stay in NAPI mode when default pipe has
low credits")'.
Change-Id: Iad8cb744b1031d75dfc7457b142dcbd018584d92
Signed-off-by: Jishnu Prakash <jprakash@codeaurora.org>
During hoplug cpu going down path pmu event handles will be freed.
If the hotplug path and idle path run in parallel there are chances
in idle path that the driver will try to read the PMU counters with
freed pointer resulting in a crash.
Add NULL pointer check before performing PMU reads.
Change-Id: I9b8a4a8dfa63e70e879c3530a878a9c96062872f
Signed-off-by: Santosh Mardi <gsantosh@codeaurora.org>
Crashdumper required sometime to finish all register dumps.
Hence add minimum 100msec sleep time before we start polling
on crashdumper completion. Use readl_poll_timeout() for
crashdumper completion check to reduce AHB traffic.
Change-Id: I112466e67760f26e73e7c8a69bf466ce8b8ef09b
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
Sometimes it is seen that AON LDO output takes minimum
off-time (worst case 100ms) to fully discharge. If BT is
turned on in this timeframe when AON is not fully discharged
yet ,BT would fail to turn ON.
This fix ensures to
Toggle BT_EN high when WL_EN is already high.
Handle corner case if WL_EN goes low in step 1.
Add 100ms to toggle BT_EN high when WL_EN is low.
Change-Id: Ibe082165788bd9ddb553e6043696bebc5bf4b609
Signed-off-by: Mahesh Kumar Sharma <smahesh@codeaurora.org>