Commit graph

899,485 commits

Author SHA1 Message Date
qctecmdr
0faa021f71 Merge "clk: qcom: debugcc: Add measure only support for QDSS clocks" 2021-07-30 08:51:15 -07:00
qctecmdr
665802b42e Merge "clk: qcom: debugcc: Add measure only support for QDSS clocks" 2021-07-30 08:51:13 -07:00
Vijayanand Jitta
c6efde4313 mm: vmalloc: prevent use after free in _vm_unmap_aliases
A potential use after free can occur in _vm_unmap_aliases where an already
freed vmap_area could be accessed, Consider the following scenario:

Process 1						Process 2

__vm_unmap_aliases					__vm_unmap_aliases
	purge_fragmented_blocks_allcpus				rcu_read_lock()
		rcu_read_lock()
			list_del_rcu(&vb->free_list)
									list_for_each_entry_rcu(vb .. )
	__purge_vmap_area_lazy
		kmem_cache_free(va)
										va_start = vb->va->va_start

Here Process 1 is in purge path and it does list_del_rcu on vmap_block and
later frees the vmap_area, since Process 2 was holding the rcu lock at
this time vmap_block will still be present in and Process 2 accesse it and
thereby it tries to access vmap_area of that vmap_block which was already
freed by Process 1 and this results in use after free.

Fix this by adding a check for vb->dirty before accessing vmap_area
structure since vb->dirty will be set to VMAP_BBMAP_BITS in purge path
checking for this will prevent the use after free.

Change-Id: Ibba0e2ee0d0f049aa0158b78b086aeaad6b70f68
Link: https://lkml.kernel.org/r/1616062105-23263-1-git-send-email-vjitta@codeaurora.org
Signed-off-by: Vijayanand Jitta <vjitta@codeaurora.org>
Git-Commit: ad216c0316ad6391d90f4de0a7f59396b2925a06
Git-Repo: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Reviewed-by: Uladzislau Rezki (Sony) <urezki@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-07-29 20:47:17 -07:00
Madhuri Medasani
4c695f9809 clk: qcom: debugcc: Add measure only support for QDSS clocks
Add measure only support for QDSS related GCC clocks for
YUPIK.

Change-Id: Ia27282433a63d21929cad3bd8098cc91df445db8
Signed-off-by: Madhuri Medasani <mmedasan@codeaurora.org>
2021-07-29 20:33:52 -07:00
Madhuri Medasani
487b036248 clk: qcom: debugcc: Add measure only support for QDSS clocks
Add measure only support for QDSS related GCC clocks for
SHIMA.

Change-Id: I8aac50323865f71cc44461abb45a8ae97e75c314
Signed-off-by: Madhuri Medasani <mmedasan@codeaurora.org>
2021-07-29 20:33:22 -07:00
qctecmdr
a17b7c30c8 Merge "msm: kgsl: Add fallback condition for atomic snapshot" 2021-07-29 16:01:00 -07:00
qctecmdr
3f963214ec Merge "net: qrtr: Move boot KPI to sysnode" 2021-07-29 05:47:04 -07:00
qctecmdr
7d40d258c3 Merge "msm: pcie : Notify client driver on reading FF's" 2021-07-29 01:51:17 -07:00
qctecmdr
64c318f67b Merge "clk: qcom: debugcc: Update the gcc_qup clocks of PM8008 to measure only" 2021-07-29 01:51:17 -07:00
Madhab Sharma
a6da29f8ed net: qrtr: Move boot KPI to sysnode
Moving boot KPI to sysnode by using “place_marker".

Change-Id: I0680584b23a63e4f185cf68c118e696ac956dd2e
Signed-off-by: Madhab Sharma <madhshar@codeaurora.org>
2021-07-29 01:35:20 -07:00
qctecmdr
1024a5df27 Merge "usb: dwc3: Dont release wakeup source during usb restart" 2021-07-28 21:43:42 -07:00
Madhuri Medasani
1990178de1 clk: qcom: debugcc: Update the gcc_qup clocks of PM8008 to measure only
Update gcc_qup clocks of pm8008 to measure only
since these are not registered in GCC to avoid
the crash because of parent index in BLAIR.

Change-Id: Ia9d19b95331a43eab3c229405218e5871c073be1
Signed-off-by: Madhuri Medasani <mmedasan@codeaurora.org>
2021-07-28 20:50:57 -07:00
qctecmdr
fd87c199ce Merge "kernel: msm-5.4: Add Kconfig option for IOSS Shim layer" 2021-07-28 13:53:55 -07:00
qctecmdr
094bac2b7c Merge "defconfig: sdxlemur: Enable QPS615_ioss module" 2021-07-28 13:53:55 -07:00
qctecmdr
caba42fdbd Merge "msm: mhi_dev: Defer mhi resume till M0 ack is sent" 2021-07-28 13:53:54 -07:00
Elson Roy Serrao
980a25b5c2 usb: dwc3: Dont release wakeup source during usb restart
When changing USB speed via sysfs, the device might utilize the
idle time between DISCONNECT and CONNECT events and enter suspend.
As a result the pending CONNECT might get delayed thus pushing USB
enumeration during the next resume. Avoid this by not releasing the
wakeup source when usb restart is in progress.

Change-Id: I754b76eb7b36923a2dcd4d58587101750d1cd83c
Signed-off-by: Elson Roy Serrao <eserrao@codeaurora.org>
2021-07-28 13:24:30 -07:00
qctecmdr
d42e52d6ba Merge "usb: f_qdss: Flush connect_work in qdss close" 2021-07-28 03:57:03 -07:00
Veerabhadrarao Badiganti
9d1744bde8 msm: mhi_dev: Defer mhi resume till M0 ack is sent
Defer mhi resume till M0 ack is notified to host.
This is to ensure no outstanding transfer completion events are
send to host before M0 ack.

Change-Id: Ia10fabc554b1cdef14a0771012b9ffea68851e25
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2021-07-27 21:51:36 -07:00
qctecmdr
fffc7785e6 Merge "msm: ep_pcie: Correct clkreq override value" 2021-07-27 09:39:52 -07:00
qctecmdr
bf25f30620 Merge "msm: ep_pcie: Allow L1 states while switching back to D0 from D3hot" 2021-07-27 09:39:52 -07:00
Elson Roy Serrao
4aba93633a usb: f_qdss: Flush connect_work in qdss close
When qdss open and close are called back to back at a high rate,
connect_work that gets queued in qdss open can execute after
qdss close. For qdss HW path the connect work that gets scheduled
as part of the next qdss open results in ep config failure as the
ep is already configured during previous connect work. Now before
queuing the request if there is a qdss close it would reset the dbm
ep configuration thus routing this request via software path instead
of dbm path. The subsequent dequeue would lead to a NULL pointer
dereference of completion callback. Fix this by flushing connect_work
as part of qdss close for graceful termination.

Change-Id: I8edf73ea1f87e297297828e6e25c7c14a422ec3a
Signed-off-by: Elson Roy Serrao <eserrao@codeaurora.org>
2021-07-27 09:34:57 -07:00
Siva Kumar Akkireddi
821b9fac95 msm: ep_pcie: Correct clkreq override value
Use unshifted value to set the clock req override value
and enable fields as the register write function already
shifts the values to the correct position.

Change-Id: I0b5dea0f6f8462363471910ffe93f8f8975e7929
Signed-off-by: Siva Kumar Akkireddi <sivaa@codeaurora.org>
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2021-07-27 07:13:39 -07:00
Veerabhadrarao Badiganti
79f29bc3c1 msm: ep_pcie: Allow L1 states while switching back to D0 from D3hot
During D3hot, we are explicitly blocking L1 state by setting
REQ_EXIT_L1 bit of PM_CTRL register. If we transitioning back to D0
from D3 (without D3cold), REQ_EXIT_L1 bit won't get cleared. And
L1 would get blocked till next D3cold. Clear this explicitly during
D0 to avoid this scenario.

Change-Id: Ib168dee255f29832600ebca14eea1ac2ea393985
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2021-07-27 07:09:07 -07:00
qctecmdr
2be0043e65 Merge "clk: qcom: dispcc-blair: Allow config of cdivs for byte clk" 2021-07-27 05:37:20 -07:00
BIVASH KUMAR SINGH
8493c5affb clk: qcom: dispcc-blair: Allow config of cdivs for byte clk
Change the clk_regmap_div_ro ops to clk_regmap_div ops to
allow dynamic configuration of the cdivs. This is required
for cphy configuration where the byte intf clock need to be
the same frequency as its byte clock.

Change-Id: Iddf733697b7287577f690bd5535a60f406b7129a
Signed-off-by: BIVASH KUMAR SINGH <bkumarsi@codeaurora.org>
2021-07-27 02:04:14 -07:00
Tapas Dey
30e5a66dad NFC: Fix NULL pointer dereference issue
Modify code and add proper NULL check to avoid
NULL pointer dereference.

Change-Id: I09c6a74b653b12e60c48fc5f63cca9148e117ee9
Signed-off-by: Tapas Dey <tdey@codeaurora.org>
2021-07-26 21:55:53 -07:00
Yuanfang Zhang
5bbfc7877b coresight-tmc-etr: remove mem_lock when call usb_qdss_close
This mem_lock will cause deadlock when usb close router call back to
usb_notifier. so remove it.

Change-Id: I9530c843702ca605f6935cc0ac6d9649bf204594
Signed-off-by: Yuanfang Zhang <zhangyuanfang@codeaurora.org>
2021-07-26 19:21:48 -07:00
Manuel Gomez
e32fd61577 defconfig: sdxlemur: Enable QPS615_ioss module
The dlkm will be called qps615_ioss.ko

Change-Id: Ib3bc94482278eee6e8ac3e0b2f8182221702159d
Signed-off-by: Manuel Gomez <gomez@codeaurora.org>
2021-07-26 17:39:14 -07:00
Manuel Gomez
c017185306 kernel: msm-5.4: Add Kconfig option for IOSS Shim layer
Allow IOSS Shim layer to be dynamically loaded as a kernel module.

Change-Id: Iac293adfb29954b12253b1ee08f64077606091cc
Signed-off-by: Manuel Gomez <gomez@codeaurora.org>
2021-07-26 14:00:44 -07:00
qctecmdr
9f842b7a49 Merge "msm: kgsl: Initialize cb_num for secure context" 2021-07-26 09:06:05 -07:00
qctecmdr
b24468ce1b Merge "drivers: rpmh: Always bug_on() upon timeout in rpmh_write_batch()" 2021-07-26 09:06:04 -07:00
Vivek Pernamitta
477b8978ef msm: pcie : Notify client driver on reading FF's
Disable access to PCIE config space registers and notify client
driver to recover link on reading PCIE endpoint config registers
as FF's.

Change-Id: Iea6b25036bc6d967d6598d08348bb41fc18ef304
Signed-off-by: Vivek Pernamitta <vpernami@codeaurora.org>
2021-07-26 04:57:59 -07:00
Harshitha Sai Neelati
ded39f3537 msm: kgsl: Initialize cb_num for secure context
Currently we are not initializing cb_num for secure context.
This is causing problems in the kgsl fault handler path when
there is a pagefault for secure context. Hence initialize cb_num
for secure context.

Change-Id: I35a37193f512f315f443e9f0d92fdae11411bbd2
Signed-off-by: Harshitha Sai Neelati <hsaineel@codeaurora.org>
2021-07-26 14:40:47 +05:30
Maulik Shah
af4be8e107 drivers: rpmh: Always bug_on() upon timeout in rpmh_write_batch()
rpmh_rsc_debug() can race with tcs_tx_done() interrupt handler and
may not see any tcs busy and hence won't do bug_on(). Later it may
go ahead and free() the request which interrupt handler is processing.

Lets always bug_on() upon timeout.

Change-Id: I238a6a3639077850df158cb1f0190656e014bb57
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2021-07-26 01:19:33 -07:00
qctecmdr
4028cd304e Merge "mmc: core: Fix mmc sleep/awake functionality" 2021-07-25 22:10:10 -07:00
Naman Padhiar
d915a46562 icnss2: Add check for max thermal state
Add check for maximum thermal state while setting
current state.

Change-Id: I4ade853d0cda1d8754486dc6dd8f53596fae7a9a
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
2021-07-23 03:44:32 -07:00
Rohan Sethi
8b09efecfd msm: kgsl: Add fallback condition for atomic snapshot
There is possibility of failure in getting large memory
during panic notifier callback. Hence try atomic snapshot
with 1MB in case default memory allocation fails.

Change-Id: I8f5ff29139d272dc35094c230e1868623585b476
Signed-off-by: Rohan Sethi <rohsethi@codeaurora.org>
2021-07-23 13:28:59 +05:30
qctecmdr
879de41f37 Merge "serial: msm_geni_serial: Bailout from wait_for_transfers_inflight" 2021-07-22 09:36:34 -07:00
qctecmdr
5091ce2063 Merge "tz_log: update TZ version for enlarged buf" 2021-07-22 09:36:33 -07:00
qctecmdr
bb1eae380d Merge "ANDROID: gki_config: disable per-cgroup pressure tracking" 2021-07-22 03:24:20 -07:00
qctecmdr
c67017ec6f Merge "mmc: sdhci-msm: Adding delay of 200us after deassert" 2021-07-22 03:24:19 -07:00
Chandana Kishori Chiluveru
c4314b02d9 serial: msm_geni_serial: Bailout from wait_for_transfers_inflight
This change is to avoid potential race btw stop rx and incoming
SOC RX data in parallel. During suspend path wait_for_transfers_inflight()
logic will check for TX/RX data pending for completion. Check for RX_LEN_IN
status in wait_for_transfers_inflight() and return -EBUSY to avoid race
between stop_rx and SOC RX data.

Change-Id: I28702d3dc11ee4b6d3fe5b4bad9a19099d8cf725
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
2021-07-21 22:37:32 -07:00
Gauri Joshi
8d7347a6c3 msm: ep-pcie: Clear L23 READY after enumeration
L23_READY bit in the PARF_PM_CTRL register is set coming
out of PBL. Clear it once PCIe enumerates. This will avoid
the corner case where L23_READY is sent to the host causing
the link to be disable before the EP PCIe driver has had a
chance to disable the endpoint cleanly.

Change-Id: I2159cf88c4ec5f2b38b7134e42c6a069a9738d6c
Signed-off-by: Gauri Joshi <gaurjosh@codeaurora.org>
2021-07-21 16:13:10 -07:00
Gaurav Kashyap
0ed0ca2840 tz_log: update TZ version for enlarged buf
Update the TZ version to include the latest diag version
when choosing to use enlarged buffers.

Change-Id: Icd285c171957d0ddf6d4e9980bae33fa7b5eb9ec
Signed-off-by: Gaurav Kashyap <gaurkash@codeaurora.org>
2021-07-20 21:05:39 +05:30
qctecmdr
f627bf94a3 Merge "drivers: pinctrl: sdxlemur: Update GPIO PDC map" 2021-07-20 07:13:31 -07:00
Maramaina Naresh
943d21abf7 mmc: sdhci-msm: Adding delay of 200us after deassert
After BCR reset while reconfiguring the SDHC registers
Interrupt Signal Enable Register does not reflect the value
and so it fails initialization of eMMC. As per design constraint
it requires 200us delay after BCR reset.

Change-Id: I99eca34e02a1b2557dca3b3da5a0cbeb32b7aff5
Signed-off-by: Maramaina Naresh <mnaresh@codeaurora.org>
2021-07-20 04:21:39 -07:00
Tushar Nimkar
8058227d71 drivers: pinctrl: sdxlemur: Update GPIO PDC map
This change updates gpio to pdc mapping for sdxlemur.

Change-Id: I0149b3cc798815693a7999335444419b1d896444
Signed-off-by: Tushar Nimkar <tnimkar@codeaurora.org>
2021-07-20 03:02:36 -07:00
Sayali Lokhande
94096bd1d9 mmc: core: Fix mmc sleep/awake functionality
Currently as part of mmc suspend and resume, we are using
different api's to check support for cmd5 (sleep/awake),
which results in suspend sending cmd5 for sleep, while
in resume it's always going for full init instead of sending
cmd5 for awake. Fix this by using same api in both suspend
and resume paths so that partial init functionality is
actually utilized.

Change-Id: Ia84b7790fe00f1f24a63d6dc509646ebcbd4d3ef
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2021-07-20 00:29:38 -07:00
Naman Padhiar
7c5235d350 cnss2: Avoid ASSERT in panic handler
Avoid calling ASSERT from select_window API when it called
from panic handler. As device is already crashed, calling
ASSERT will just add unwanted prints and dump stacks.

Change-Id: If38be6d8e452c49cabfa059b4bf12b2f8a3c60a2
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
2021-07-19 21:10:29 -07:00
qctecmdr
c7f857a07a Merge "iio: qcom-spmi-adc5: Add support for SW calibrated ADC" 2021-07-19 07:43:28 -07:00