Commit graph

894,099 commits

Author SHA1 Message Date
Shreyas K K
e7c24883b3 defconfig: gen3auto: Enable boot stats and boot marker
Enable boot stats driver and boot time marker config
options for gen3auto targets.

Change-Id: If9b24937d2fe1df9f8a3eb5f0e8ee1d0b4c4d28f
Signed-off-by: Shreyas K K <shrekk@codeaurora.org>
2021-02-22 11:19:03 +05:30
qctecmdr
98ed180626 Merge "usb: dwc3: Add debugfs entry to toggle compliance pattern" 2021-02-19 22:41:25 -08:00
qctecmdr
c63c285927 Merge "msm: pcie: add sysfs entry to output PCIe link ASPM stats" 2021-02-19 22:41:24 -08:00
qctecmdr
d7006445cf Merge "usb: dwc3-msm: Prevent switch to peripheral for host-mode only core" 2021-02-19 22:41:24 -08:00
qctecmdr
4918c41c06 Merge "msm: kgsl: Signal dump_gate only when worker finishes work" 2021-02-19 22:41:24 -08:00
qctecmdr
30bc6cb0a6 Merge "input: touchscreen: nt36xxx: Use disable/enable irq wake in LA to LE" 2021-02-19 22:41:23 -08:00
qctecmdr
04707ce95b Merge "tty: serial: msm: Add suspend resume support" 2021-02-19 22:41:23 -08:00
qctecmdr
78e3282dfd Merge "Kbuild: Support nested composite objects" 2021-02-19 22:41:22 -08:00
Ritesh Kumar
e44ea45369 input: touchscreen: nt36xxx: Use disable/enable irq wake in LA to LE
Touch uses gpio as irq in LA. As per latest change from pinctrl,
wakeup bit is disabled/enabled when disable_irq/enable_irq is called.
During transtion from LA to LE, disable_irq is called leading to
wakeup bit getting disabled and in LE Touch interrupts does not come.
So, use disable_irq_wake to disable Touch interrupts while transition
from LA to LE and use enable_irq_wake to enable back Touch interrupts
while transition from LE to LA.

Change-Id: Iad3391af40535d51daeef881c3d62b3ec893fff2
Signed-off-by: Ritesh Kumar <riteshk@codeaurora.org>
2021-02-19 07:18:04 -08:00
qctecmdr
cb6f97e574 Merge "drivers: soc: Add support for SM6150 llcc driver" 2021-02-19 05:45:46 -08:00
qctecmdr
b76d27384f Merge "defconfig: gen3auto: Enable Socinfo driver" 2021-02-19 05:45:45 -08:00
qctecmdr
e7a67c2747 Merge "Perf: Enable pmuv3 on 32 bit kernel" 2021-02-19 05:45:45 -08:00
qctecmdr
1db319056f Merge "smcinvoke: Update the correct result from qseecom" 2021-02-19 05:45:45 -08:00
qctecmdr
f5d108f404 Merge "msm: ep_pcie: Changes to avoid handle_perst_wq schedule out" 2021-02-19 05:45:45 -08:00
Pankaj Gupta
7a7d99de04 msm: kgsl: Signal dump_gate only when worker finishes work
Currently we are accessing snapshot structure after signaling
dump_gate. In corner cases this worker can get preempted
before driver reads this variable, and eventually client
dumps the snapshot and snapshot object gets released.
When worker gets back in execution it will read freed memory
and will case kernel panic.
To fix this race, do completion for dump_gate after finishing
work in worker kgsl_snapshot_save_frozen_objs.

Change-Id: Iaf3c9f9e75a6e3e19653d2d166e2da624796ec98
Signed-off-by: Pankaj Gupta <gpankaj@codeaurora.org>
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
2021-02-19 17:25:17 +05:30
qctecmdr
6753ae03b3 Merge "i2c-msm-geni: Bypass ICC vote check for LE when dumping register" 2021-02-19 01:29:08 -08:00
qctecmdr
12af436ce6 Merge "usb: dwc3: Handle race between composition switch and cable disconnect" 2021-02-19 01:29:07 -08:00
qctecmdr
d2087f76fa Merge "defconfig: enable memory dump for perf build on sdxnightjar" 2021-02-19 01:29:07 -08:00
qctecmdr
91801e9520 Merge "Add support for new versions for BT chip" 2021-02-19 01:29:06 -08:00
qctecmdr
e39b3087c2 Merge "drivers: qcom: boot_stats: Update function signature" 2021-02-19 01:29:06 -08:00
qctecmdr
31e40c1439 Merge "drivers: qcom: socinfo: Add support for ADP hardware type" 2021-02-19 01:29:06 -08:00
qctecmdr
7c1dca2311 Merge "driver: soc: adsp vote: QMI driver to send ADSP vote" 2021-02-19 01:29:06 -08:00
qctecmdr
407c5c2763 Merge "msm: config: Enable adsprpc configuration" 2021-02-19 01:29:05 -08:00
qctecmdr
a3447330d7 Merge "defconfig: gen3auto: Set CONFIG_BLK_DEV_LOOP_MIN_COUNT to 16 for vts test" 2021-02-19 01:29:05 -08:00
qctecmdr
83857705fd Merge "usb: f_fs: Avoid use-after-free of epfile" 2021-02-19 01:29:05 -08:00
qctecmdr
c0c35a301d Merge "clk: qcom: gcc-yupik: Add support for PCIE clocks in YUPIK" 2021-02-19 01:29:04 -08:00
Harsh Agarwal
83e104196c usb: dwc3-msm: Prevent switch to peripheral for host-mode only core
Currently certain platforms have cores which are only host-mode
compatible. Prevent switch to peripharal mode for such cores so
as to prevent unanticipated core behavior and crashes.

Change-Id: I163e878bfe7428ed339409adb8a491a6673ca055
Signed-off-by: Harsh Agarwal <harshq@codeaurora.org>
2021-02-19 00:54:30 -08:00
qctecmdr
84df7e4035 Merge "defconfig: gen3auto_debug: Add flags for suspend debug" 2021-02-18 03:01:54 -08:00
qctecmdr
277cc29f94 Merge "defconfig: steppeauto: Enable non GKI driver for SA6155" 2021-02-18 03:01:53 -08:00
qctecmdr
62c8c68914 Merge "defconfig: Add rtc and pwm drivers sdxnightjar" 2021-02-18 03:01:52 -08:00
qctecmdr
f4630de13f Merge "defconfig: Enable IOSS v2 for sdxlemur" 2021-02-18 03:01:52 -08:00
qctecmdr
1b39927680 Merge "defconfig: sdmsteppeauto_debug: Add flags for suspend debug" 2021-02-18 03:01:52 -08:00
Satish Kodishala
a0bd14d0be Add support for new versions for BT chip
Add support for new versions for BT chip

CRs-Fixed: 2880672
Change-Id: Ia86bdec665a56d67cd53c0531ab7aebb14b4bcc0
Signed-off-by: Satish Kodishala <skodisha@codeaurora.org>
2021-02-18 01:34:50 -08:00
Shreyas K K
5f4ebb2c89 drivers: qcom: boot_stats: Update function signature
Update init_bootkpi and boot_marker_enabled as inline
functions to avoid -Wunused-function compiler error.

Change-Id: I61098c8bcc941d21a2ff30905cd93d82af1cf1f4
Signed-off-by: Shreyas K K <shrekk@codeaurora.org>
2021-02-18 14:16:15 +05:30
Sriharsha Allenki
592dc3b133 usb: dwc3: Handle race between composition switch and cable disconnect
The current implementation of handling run/~stop of DCTL based
on state of VBUS or the pullup call from the udc core can
result in a below race condition where the run/~stop is cleared
twice leading to an invalid state of controller.

	Thread -1			Thread-2
	vbus_session (1)

	   spin_lock
	   no run_stop(1) call		pullup(1)
	   spin_unlock			  softconnect = 1
					  vbus_active checked

	vbus_session (0)
	   spin_lock
	   run_stop(0) called
	   spin_unlock

Prevent this by ensuring a proper state transitions and clear
run/~stop only when when there is a transition from ACTIVE
and there is an pullup(0) event or vbus_session(0) call.

Change-Id: I03c4acfc2c6697e02c510d079c7d48d9a82bb322
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
Signed-off-by: Pratham Pratap <prathampratap@codeaurora.org>
2021-02-18 12:33:54 +05:30
Wu Gao
f8e620a0f9 defconfig: enable memory dump for perf build on sdxnightjar
Enable memory dump V2 for perf build on sdxnightjar.

Change-Id: Idaaf3bc17878329813e2406e4fb767fcd4262682
Signed-off-by: Wu Gao <wugao@codeaurora.org>
2021-02-18 14:29:18 +08:00
Jeya R
ba8ca91c83 msm: config: Enable adsprpc configuration
Enable building of adsprpc driver along with
kernel image.

Change-Id: I34dd3098db1973d0a8e4e9a7bcb4dae507901de5
Signed-off-by: Jeya R <jeyr@codeaurora.org>
2021-02-18 11:57:01 +05:30
Vinay Sudra
51c81630df defconfig: gen3auto: Set CONFIG_BLK_DEV_LOOP_MIN_COUNT to 16 for vts test
Set CONFIG_BLK_DEV_LOOP_MIN_COUNT=16 that pre-create loop block
devices at init time for vts_kernel_loopconfig_test.

Change-Id: I136c0f620913d2ce8ddbb0ccbd8bc0b05f72a3ad
Signed-off-by: Vinay Sudra <vsudra@codeaurora.org>
2021-02-18 10:36:30 +05:30
Udipto Goswami
5acdbe597c usb: dwc3: gadget: Fix double add due to cleanup_cancelled_request
Commit 6a247993218c ("usb: dwc3: gadget: Properly handle failed
kick_transfer") introduces a piece of code where if gadget_ep_cmd
fails in kick_transfer, it calls stop_active_transfer for that ep
& move the request from started_list to cancelled_list. Finally
it checks for DWC3_EP_END_TRANSFER_PENDING flag, if not set then
moves ahead and calls dwc3_gadget_cleanup_cancelled_request as part
of which gadget giveback for the request is called. This will
ultimately mean ep_queue failure as ep_queue returns the status of
kick_transfer.

Now from the function driver perspective, when ep_queue fails
it tries to add the request back to the pool from which the request
was queued.

But,since we did a cleanup_cancelled_request the completion handler
of the function driver is also called which tries to add the same
request back to the pool, resulting in a double add scenario.

Fix this by returning 0 from ep_queue rather then returning the
status of kick_transfer. For a function driver it would mean
ep_queue success and will not add the request back to read pool
and since we already are giving back the request as part of
cleanup_cancelled_requests, the request will be added back to
the pool and avoid the double add scenario.

Change-Id: I82bc21c34a795820998483c4a88e1891495a6906
Signed-off-by: Udipto Goswami <ugoswami@codeaurora.org>
Signed-off-by: Pratham Pratap <prathampratap@codeaurora.org>
2021-02-17 21:05:24 -08:00
Pratham Pratap
1c3b63b8d8 usb: f_fs: Avoid use-after-free of epfile
Consider a case where ffs_func_eps_disable is called from
ffs_func_disable as part of composition switch and at the
same time ffs_epfile_release get called from userspace.

ffs_epfile_release will free up the read buffer and call
ffs_data_closed which in turn destroys ffs->epfiles and
mark it as NULL. While this was happening the driver has
already initialized the local epfile in ffs_func_eps_disable
which is now freed and waiting to acquire the spinlock. Once
spinlock is acquired the driver proceeds with the stale value
of epfile and tries to free the already freed read buffer
casuing use-after-free.

Fix this race by assigning epfile under spin_lock from
ffs_func_eps_disable.

Change-Id: I9e1f376bb2212e8a8040f884514342c428098bdd
Signed-off-by: Pratham Pratap <prathampratap@codeaurora.org>
2021-02-17 21:03:17 -08:00
Vinay Sudra
c3b13589d8 defconfig: sdmsteppeauto_debug: Add flags for suspend debug
Add clock debug and suspend state debug flags.

Change-Id: I23c5f2948675ccc0f9555762426e1307af7d6e59
Signed-off-by: Vinay Sudra <vsudra@codeaurora.org>
2021-02-17 20:57:43 -08:00
Jinesh K. Jayakumar
129d27e6e4 defconfig: Enable IOSS v2 for sdxlemur
Enable IPA offload sub-system for sdxlemur target.

Change-Id: Ief257fa0258db19c2bcb8acd4aa839dbc8a2a888
Signed-off-by: Jinesh K. Jayakumar <jineshk@codeaurora.org>
2021-02-17 19:59:39 -08:00
Gauri Joshi
43c5563a57 msm: ep_pcie: Changes to avoid handle_perst_wq schedule out
Queue handle_perst_wq as system_highpri_wq to avoid WQ getting
scheduled out.

Change-Id: I28fdc6e3d51b98b132c04bf552c40c9dad3cbd0f
Signed-off-by: Subramanian Ananthanarayanan <skananth@codeaurora.org>
Signed-off-by: Gauri Joshi <gaurjosh@codeaurora.org>
2021-02-17 17:05:48 -08:00
Gauri Joshi
dd572f2351 msm: ep_pcie: Add IPA MSI ATU config
All transactions originating from IPA have the Relaxed Ordering
bit set by default. Setup an ATU region to clear the bit for
MSIs triggered via IPA DMA as MSI writes shouldn't have it set.

Change-Id: Ib092834ca2d1a3e01aa3e63e1b35f7ab6766d9a0
Signed-off-by: Siva Kumar Akkireddi <sivaa@codeaurora.org>
Signed-off-by: Gauri Joshi <gaurjosh@codeaurora.org>
2021-02-17 17:05:48 -08:00
Gauri Joshi
9186f10287 msm: ep_pcie: Avoid check for l23_ready in d3hot,d0 scenario
ep_pcie_core_wakeup_host() checks for l23_ready, this results in
WAKE pin getting asserted while PERST is already de-asserted.
Becausee enable_end_point already completed, WAKE is never toggled
back to the original state and remains asserted.

Removing the check for l23_ready and thus preventing WAKE
assert when PERST is in de-asserted state.

Change-Id: I1389ad0f24af7d0d1877563327190737f9872611
Signed-off-by: Subramanian Ananthanarayanan <skananth@codeaurora.org>
Signed-off-by: Gauri Joshi <gaurjosh@codeaurora.org>
2021-02-17 17:05:48 -08:00
Gauri Joshi
fcdc535806 msm: ep_pcie: Update PERST status when BME is not set
During customer testing, when host is in BIOS stage during critical
battery level device boots up till AMSS. We get a BME IRQ fired, but
BME is no set as host has bailed out enumeration process due to
critical battery level. This is followed by a PERST assert, in
disable_endpoint we bail out as the PERST is in de-asserted state
according to the status variable, though the actual line status
is assert. The host then continuosly tries to do PERST
assert/de-assert but we never end up doing link training as from
device perspective the link is already initialized state.

Adding change to update PERST status in case of BME not getting set.
This helps in disable_endpoint to happen followed by successful link
training.

Change-Id: Idd576f4cb0ab649b5aa86e6b1d2cdea204218878
Signed-off-by: Subramanian Ananthanarayanan <skananth@codeaurora.org>
Signed-off-by: Gauri Joshi <gaurjosh@codeaurora.org>
2021-02-17 17:05:48 -08:00
Gauri Joshi
49401bbfc2 msm: ep_pcie: Changes to acquire wakelock as part of PERST IRQ
Changes to acquire wakelock as part of PERST deassert
in non enumerated scenario.

Change-Id: Ica992e12fe827e29416fbe56469d7be8b92ff5c5
Signed-off-by: Subramanian Ananthanarayanan <skananth@codeaurora.org>
Signed-off-by: Gauri Joshi <gaurjosh@codeaurora.org>
2021-02-17 17:05:48 -08:00
Gauri Joshi
4966230ae8 msm: ep_pcie: Acquire wakelock as part of D0 event
During bootup scenario, there will not be any PERST de-assert
interrupt. So if host send mhi suspend event followed by
D3 hot and D0 event, then the PCIE link will be in an enabled
state but there will not be any wake lock to prevent system
suspend scenario.

To prevent the above scenario we will acquire wakelock as part of D0
during bootup scenario and from PERST-deassert for subsequent cases.
The change also involves to prevent system suspend if there is PERST
de-assertion during system suspend scenario.

Registering for suspend_noirq(), as this guarantees that there can be
no wakeup interrupts(PERST assertion) during this call.

Change-Id: I19051df46cc8353492e34175a47665ab89dc86af
Signed-off-by: Subramanian Ananthanarayanan <skananth@codeaurora.org>
Signed-off-by: Gauri Joshi <gaurjosh@codeaurora.org>
2021-02-17 17:05:48 -08:00
Biao Long
63e02e9694 Perf: Enable pmuv3 on 32 bit kernel
Add mechanism to detect and enable pmuv3 on 32 bit kernel.

Change-Id: I56e0c5a0bb2dbc2dc1445fb578782ec5e8c98def
Signed-off-by: Sheetal Sahasrabudhe <sheetals@codeaurora.org>
Signed-off-by: Biao Long <blong@codeaurora.org>
2021-02-18 08:10:26 +08:00
Tony Truong
1d5224ec26 msm: pcie: add sysfs entry to output PCIe link ASPM stats
Provide users a way to check how many times the link between
root complex and its partner have entered L0s, L1, L1.1, and
L1.2.

Change-Id: If3170d26221d05039afc0a2433bebaf0c3799549
Signed-off-by: Tony Truong <truong@codeaurora.org>
2021-02-17 14:35:35 -08:00