Only the memory written to usb needs to wait for write complete
when removed driver or modem ssr happened. The "used" member is
used to mark the state of memory written to usb.
Change-Id: Ia1755a6c38f8419c5282347744a3d8f3d3b58ad7
Signed-off-by: Yuanfang Zhang <zhangyuanfang@codeaurora.org>
Use kmalloc() + DMA streaming API instead of DMA coherent
memory. The coherent memory is uncached and results in slower
decode performance.
Change-Id: Ibb5990adc3bc319fd704534721140644d76a5787
Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
Add code to dump PCIE SOC scratch registers along with mhi reg
dumps to enhance debug info.
Change-Id: I65fc8324a8cccac6f5ffe73f6fc9513a561ee32e
Signed-off-by: Mohammed Siddiq <msiddiq@codeaurora.org>
write_seqcount_begin expects to be called from a non-preemptible
context to avoid preemption by a read section that can spin due
to an odd value. But the readers of vm_sequence never retries and
thus writers need not disable preemption. Use the non-lockdep
variant as lockdep checks are now in-built to write_seqcount_begin.
Bug: 161210518
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
Change-Id: If4f0cddd7f0a79136495060d4acc1702abb46817
Git-commit: c9201630e8a53106406516ba40862e637c324480
Git-repo: https://android.googlesource.com/kernel/common/
Signed-off-by: Srinivasarao Pathipati <quic_spathi@quicinc.com>
Update the IFPC power up reglist to include all the CP Protect
registers.
Change-Id: I1b43420c466b8a228892afac8ecf05b11b5a80e6
Signed-off-by: Akhil P Oommen <akhilpo@codeaurora.org>
Add code to update the bound checks for sbl reg dumps to SRAM mem
range. Due to a firmware update, the sbl start address was moved
and the bound checks to dumps sbl reg failed. Update the bound
checks to SRAM mem range, so that any future update in firmware
would not impact SRAM dumps.
Change-Id: I28026f03fe1f44f2ba6ff7f903dcb98543f8847c
Signed-off-by: Mohammed Siddiq <msiddiq@codeaurora.org>
Add code to fix the PBL log ram start address for QCA6490.
Change-Id: I2a2646947ef62d878f59aa10ab391a9c6a39200c
Signed-off-by: Mohammed Siddiq <msiddiq@codeaurora.org>
Enable all the coresight configs required for the ETR
functionality.
Change-Id: Id090afa0dbf492d90b96d930a721cce94e3d9b2f
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
Add all the changes and files required for turning on
coresight ETR for SDM439 32 bit builds.
Snapshots for etmv4x.h and debugv8.h are taken from
4.9 commit:1b3405b8 .
Change-Id: I1b16180bdd496f87e12c6736b7526c2ecde3502b
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
Enable all the coresight configs required for the ETR
functionality.
Change-Id: Ieccc48c5999fb1142265829c87b797853eb50c1b
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
Change a variable type in QMI encode logic to avoid
buffer overflow scenario.
Change-Id: I11b10cce0e9ab5b02738b2ba13e637df979e9310
Signed-off-by: Gopala Krishna Nuthaki <gnuthaki@codeaurora.org>
Charan Teja reported a 'use-after-free' in dmabuffs_dname [1], which
happens if the dma_buf_release() is called while the userspace is
accessing the dma_buf pseudo fs's dmabuffs_dname() in another process,
and dma_buf_release() releases the dmabuf object when the last reference
to the struct file goes away.
I discussed with Arnd Bergmann, and he suggested that rather than tying
the dma_buf_release() to the file_operations' release(), we can tie it to
the dentry_operations' d_release(), which will be called when the last ref
to the dentry is removed.
The path exercised by __fput() calls f_op->release() first, and then calls
dput, which eventually calls d_op->d_release().
In the 'normal' case, when no userspace access is happening via dma_buf
pseudo fs, there should be exactly one fd, file, dentry and inode, so
closing the fd will kill of everything right away.
In the presented case, the dentry's d_release() will be called only when
the dentry's last ref is released.
Therefore, lets move dma_buf_release() from fops->release() to
d_ops->d_release()
Many thanks to Arnd for his FS insights :)
[1]: https://lore.kernel.org/patchwork/patch/1238278/
Fixes: bb2bb90 ("dma-buf: add DMA_BUF_SET_NAME ioctls")
Reported-by: syzbot+3643a18836bce555bff6@syzkaller.appspotmail.com
Cc: <stable@vger.kernel.org> [5.3+]
Cc: Arnd Bergmann <arnd@arndb.de>
Reported-by: Charan Teja Reddy <charante@codeaurora.org>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
Tested-by: Charan Teja Reddy <charante@codeaurora.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20200611114418.19852-1-sumit.semwal@linaro.org
Bug: 162699017
Signed-off-by: Allen Chiu <allen.chiu@mediatek.com>
Change-Id: Ief19296f201132c3e32b11958a857798c34f81fb
Git-commit: 2581e5be6555232e784487fc00961ce83c5236a1
Git-repo: https://android.googlesource.com/kernel/msm
Signed-off-by: PavanKumar S.R. <pavasr@codeaurora.org>
In addition to the master CP, toggle the UVLO config for slave CP
on USB removal to avoid poweroff-leakage.
Change-Id: I1f5d5185d003cfe104b4a67efc1fe88f105f0151
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
When system shuts down while there are work running on NPU,
NPUSS will be shut down without notifying kernel driver which
causes IPC commands timedout and triggers SSR handling.
This change is to detect this case and handle it properly
to avoid SSR.
Change-Id: I4ba6d702c2d39aa8e1894eba2ec049787df14aa8
Signed-off-by: Jilai Wang <jilaiw@codeaurora.org>
The underlying arm-smmu hardware only supports mapping addresses
aligned to PAGE_SIZE. Thus the actual mapped region may be larger than
the range returned by iommu_map_sg():
[sg_dma_address(), sg_dma_address() + sg->length)
When unmapping, ensure the same alignment requirements are applied
in order to avoid leaking iova addresses.
Change-Id: I1f5d5185d003cfe104b4a67efc1fe88f105f015f
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
Print error logs in the callback by using pr_err_ratelimited
so that watchdog bark will not occur due to excessive logging
when the callback is triggered before probe is completed.
Change-Id: I82bb84b7812cef5cb8a37e99c5cf1a54411cbdb8
Signed-off-by: Sarannya S <sarannya@codeaurora.org>
For MSM8937_32, add the configs related to charging,
vibrator and rtc.
Change-Id: I584a8520a9cd9344f72549a0bf62dc57ac9d8507
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
For MSM8937_64 targets, add PMIC configs related to
charging, vibrator and rtc.
Change-Id: I2891118f051ff9697aafcfa394940e1765fba2e4
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
For MSM8937_32go, add the configs related
to charging, vibration and rtc.
Change-Id: I0f7ca9fab3eddff785c9c755daf15796973d0226
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
Userspace initiates a shutdown if battery_status != charging
and SOC = 0, this is to prevent a deep-discharge of the battery
when the discharge current is higher than the charge current
at SOC = 0. Report this status from the kernel driver when
additionally the current voltage is below the cutoff threshold.
Change-Id: I89bb283ce9c0e01cd8c04cba2d7d33d5baca3fe7
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>
Add Charger/FG/BMS drivers qpnp-linear-charger.c, qpn-vm-bms.c,
smb1360-charger-fg.c and related files for QM215 target.
Add snapshots of the new files as of msm-4.9 commit 0848b3af1d2f
("ARM: dts: qcom: disabled wled bl type for sim_vid panel").
Change-Id: Ibc5d2a8daace8351020c53a9129fff9999f552da
Signed-off-by: Shilpa Suresh <sbsure@codeaurora.org>