Commit Graph

1163091 Commits

Author SHA1 Message Date
Huashan Qu
1c0c00b956 modules.vendor_blocklist: Remove cnss modules from gen3auto/sdmsteppeauto config
When cnss/wlan modules loading are handled by wlan tech area after
system boot completion, cnss_diag service will be started before
cnss modules loading and hence fails to start. Due to this wlan
driver logs will not be captured.

TO fix this issue, remove cnss modules from gen3auto/sdmsteppeauto
vendor blocklist config to load cnss modules at early boot up stage.

Change-Id: Ie02d2ae2e0eab8e0d324add194d2293bb05ebae2
Signed-off-by: Huashan Qu <quic_hqu@quicinc.com>
2024-01-26 08:23:59 +05:30
qctecmdr
4d166850d9 Merge "defconfig: autogvm: Add UFS PHY driver for Lemans LVGVM" 2024-01-23 11:40:50 -08:00
qctecmdr
ca0e1196e9 Merge "arm64: defconfig: Enable USB LVS test compliance module" 2024-01-22 23:45:33 -08:00
qctecmdr
d4435b97e9 Merge "remoteproc: qcom: q6v5: Early notify clients when recovery is disabled" 2024-01-22 23:45:33 -08:00
qctecmdr
8f2be5b1c4 Merge "usb: misc: lvstest: fix the logic that checks the port number from user" 2024-01-22 23:45:32 -08:00
Zou Shunxiang
d5b41f6b5d defconfig: autogvm: Add UFS PHY driver for Lemans LVGVM
Need enable CONFIG_PHY_QCOM_UFS_V4_WAIPIO for UFS PHY driver
to support Lemans LVGVM UFS passthrough.

Change-Id: I8be8b478d84095f04373cc2c8393460cb493136d
Signed-off-by: Zou Shunxiang <quic_shunxian@quicinc.com>
2024-01-23 12:55:15 +08:00
qctecmdr
e5f840a63a Merge "net: stmmac: Enable clock for EMAC driver" 2024-01-22 20:51:59 -08:00
qctecmdr
e1d8edd96c Merge "serial: msm-geni-serial: Add NULL check before freeing of buffer" 2024-01-22 20:51:58 -08:00
qctecmdr
0b7198863e Merge "serial: msm_geni_serial: Parity check failure issue" 2024-01-22 20:51:56 -08:00
qctecmdr
14b3d2f19f Merge "modules.list: Add msm-poweroff/ps-hold module for Pitti" 2024-01-22 20:51:56 -08:00
Rajashekar kuruva
c0878c41d7 arm64: defconfig: Enable USB LVS test compliance module
The LVS test module is used to verify host link layer compliance, as it
allows for control of specific root hub operations, such as bus power
management.  Enable the module in the kernel configuration, as
it should only be used in debug builds for compliance testing.

Change-Id: I3e320ba6bf5b0e0f0c607e4041aa26b2d4d8f697
Signed-off-by: Rajashekar kuruva <quic_kuruva@quicinc.com>
2024-01-21 22:13:31 -08:00
Pavankumar Kondeti
c17b9cd74c usb: misc: lvstest: fix the logic that checks the port number from user
commit 6f8914bb78fa ("usb: misc: lvstest: allow specifying port for
compliance mode") added an incorrect boolean expression to sanitize
the port number from the user. Using an arbitrary port number may result
in an invalid access. Fix this by correcting the boolean expression.

Change-Id: I7d26ace07b41c274fe9f1005c507abdefad9ea07
Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
Signed-off-by: Prashanth K <quic_prashk@quicinc.com>
2024-01-21 22:12:26 -08:00
Naman Jain
f6c320f01c remoteproc: qcom: q6v5: Early notify clients when recovery is disabled
In the remote subsystem crash scenario with recovery disabled, there is
no mechanism of early SSR notifications. There can be a case where
one of the SSR notifier block gets stuck while contesting for a lock
held by a task which is trying to contact the crashed remote subsystem
via glink. The problem is glink is not yet aware of the crash, and thus
keep on retrying, thus leading to lock not available for SSR notifier,
which leads to SSR notification timeout. To save some time to reboot by
panic in such situations, and avoid SSR timeouts, early notify the
clients, including glink in the recovery disabled case as well.

Change-Id: I67dde7023052ffb5b9932c0ac666f799fa7d0bbe
Signed-off-by: Naman Jain <quic_namajain@quicinc.com>
2024-01-22 10:09:30 +05:30
qctecmdr
688fbb711e Merge "defconfig: Enable QDSS Functions driver for Niobe" 2024-01-19 08:47:11 -08:00
qctecmdr
14e1ebd8a9 Merge "usb: dwc3-msm: Allow DP mode only after host mode has started" 2024-01-19 06:43:21 -08:00
qctecmdr
73ce43fb80 Merge "remoteproc: qcom: pas: Add support to boot WPSS in pitti" 2024-01-19 06:43:21 -08:00
Charan Teja Kalla
52b5629ec5 virtio: serialize the unplugging of virtio memblocks
The below scenario can cause plugging of memory block enter into oom
path thus can cause the dead lock scenario:
1) Plug 'm' memory blocks. Happens sequentially under qvm_lock +
flush(work).
2) Unplug 'n' memory blocks, that can happen once for a bunch as this
get triggered in close(fd) and asynchronously.
3) some blocks from step2 are failed thus the final updated plugged size
is much larger than 'qvm_hint_total'(which effects the requested size
for the next block to be plugged)
4) Now memory pressure triggered the below:
acquire(oom_lock)->qvm_oom_notify->plug memory block. The expectation
here is to plug the memory block but because of step 3, the requested
size will be still below the plugged size thus it takes the unplug
path which again enters into reclaim and stuck on oom_lock.

This can be avoided by serializing the step2 which happens under
qvm_lock and flush(vm->wq). For the blocks that are failed to unplug
will not lead into changing the 'qvm_hint_total' thus not effect the
requested size calculation for the next block.

Change-Id: I14bd05ef21ada9d183f00f30806b1556eb967099
Signed-off-by: Charan Teja Kalla <quic_charante@quicinc.com>
2024-01-18 19:58:47 -08:00
Sandeep Singh
40bfe6a811 remoteproc: qcom: pas: Add support to boot WPSS in pitti
Add entries to support WPSS boot for adrastea in pitti using
rproc.

Change-Id: I059c6fe44176a4bd814335b7934c3b7e5098cdf6
Signed-off-by: Sandeep Singh <quic_sandsing@quicinc.com>
2024-01-19 01:58:59 +05:30
qctecmdr
07ae530480 Merge "defconfig: pitti: enable fbe modules" 2024-01-18 10:39:21 -08:00
qctecmdr
725b5d19b0 Merge "usb: dwc3: msm-ops: Set maxpacket limit in usb_ep_set_limit call" 2024-01-18 08:31:10 -08:00
qctecmdr
2d5b1ac0f2 Merge "virtio: fix livelock from virtio_mem_run_wq" 2024-01-18 08:31:09 -08:00
qctecmdr
e44df6c0a3 Merge "backlight: qcom-spmi-wled: restrict HFRC clocks WA to PM8150L alone" 2024-01-18 08:31:08 -08:00
Wasim Nazir
ae6f070323 modules.list: Add msm-poweroff/ps-hold module for Pitti
Add ps-hold in first stage for pitti.

Change-Id: Iad49382320574f735be9b9dfaba6e14d9e92bf80
Signed-off-by: Wasim Nazir <quic_wasimn@quicinc.com>
2024-01-18 20:29:12 +05:30
Wasim Nazir
fd02cd7c44 defconfig: Enable msm-poweroff/ps-hold on Pitti
Add ps-hold to secure restart_reason during
power-off & restart.

Change-Id: I62b41ff9da5d61aba11b7ab835785d2c3c7dc849
Signed-off-by: Wasim Nazir <quic_wasimn@quicinc.com>
2024-01-18 20:29:03 +05:30
Prashanth K
a4653c72bb usb: dwc3-msm: Allow DP mode only after host mode has started
There are scenarios where DP driver passes the lane information
using dwc3_msm_set_dp_mode() even before dwc3-msm gets the role
notification. This causes the ssphy flags to be incorrectly set,
causing the SSUSB/QMP phy to operate in USB3 only mode instead
of USB3_AND_DP mode. Consider the following case when we connect
a 2 lane monitor to DuT using Type-C-to-C cable during bootup,

1) Role None -> sm_work kicks in and drives device to suspend,
		This causes the ss phy set_suspend to be called
		& sets USB3 mode using msm_ssphy_qmp_setmode().

2) Role None -> Device (since monitor is self powered, sometimes
			ADSP passes Device role since DUT acts
			as sink during the power negotiation).

3) dwc3_msm_set_dp_mode() - sets the PHY_USB_DP_CONCURRENT_MODE
			    flag in ssphy->flags. But since the
			    DuT is in device mode, ssphy mode is
			    not initialised properly and still
			    remains in USB3 mode. This results
			    in link layer training failures and
			    aux timeouts in DP layer.

4) Device -> Host - This initialises phy in USB3 and DP mode,
		    But by this time DP layer is already in
		    bad state causing DP mirroring to fail.

Fix this allowing DP driver to call dwc3_msm_set_mode() only
after host/XHCI has started and phy is initialised. DP Altmode
driver has retry mechanism if we return -EAGAIN or -EBUSY.

And there is a case where host_notifier might call power down
ssphy using dwc3_msm_host_ss_powerdown() if the monitor has
internal hubs and peripherals like ethernet adaptor. SSPhy gets
powered down if the SS enumeration of these internal peripherals
fails. These peripherals eventually gets enumerated after retry,
and ssphy powerup happens, but there are chances this can cause
the phy to be out of concurrent mode which affects DP mirroring.
So avoid SSphy powerdown if DP mode is enabled.

Change-Id: I358ec630bc4400a4567c2aee2d160b3ba77d6a0f
Signed-off-by: Prashanth K <quic_prashk@quicinc.com>
2024-01-18 11:54:44 +05:30
qctecmdr
465c6c6a12 Merge "soc: qcom: hab: Add sanity check for dmabuf size" 2024-01-17 19:19:27 -08:00
Charan Teja Kalla
aa21375f46 virtio: fix livelock from virtio_mem_run_wq
The below live lock is reported with VM:

Thread Z: holds qvm_lock, waiting for Thread A to finish its work.
Thread A: virtio_mem_run_wq calling alloc_contig_range ->
__alloc_pages_may_oom
Thread B: a random kmalloc() allocation -> __alloc_pages_may_oom

Suppose Thread B acquires oom lock first and calls qvm_oom_notify. Then
it will wait on qvm_lock. Thread A will observe failure from
mutex_trylock(&oom_lock) as called from __alloc_pages_may_oom, and set
*did_some_progress=1 (livelock scenario).

To fix this problem, when the allocation request is from oom notifier,
try to get the qvm_lock, If acquired, other paths will be waiting on
qvm_lock. If failed, just return so that other paths with qvm_lock don't
wait on the oom_lock.

Change-Id: I7b56c79df94c9e6f738629c9e61dd23405dae475
Suggested-by: Pavan Kumar Kondeti <quic_pkondeti@quicinc.com>
Signed-off-by: Charan Teja Kalla <quic_charante@quicinc.com>
2024-01-17 21:58:52 +05:30
qctecmdr
f06d02ce23 Merge "modules.list.msm.niobe: Add clock modules to first stage init" 2024-01-17 07:43:24 -08:00
Zahir Shabbir Khan
2467f9cda8 serial: msm_geni_serial: Parity check failure issue
Data transfer error was seen over UART.
With frequent switching odd/even parity,
waveforms were observed indicating mismatch.
Uart parity registers updated as per HW doc &
added logic to clear previous setting before new.

Change-Id: I74cdf6f93d73e8f45e443da049961060e31687f3
Signed-off-by: Zahir Shabbir Khan <quic_zshabbir@quicinc.com>
2024-01-17 02:14:15 -08:00
qctecmdr
e584cccedd Merge "scsi: ufs: qcom: Add support to identify ufs device version" 2024-01-17 02:06:15 -08:00
qctecmdr
3d05bd887c Merge "soc: qcom: hgsl: Enable hgsl driver for auto gvm" 2024-01-17 02:06:14 -08:00
qctecmdr
bd90168f07 Merge "module.list: Add watchdog support for pitti" 2024-01-17 02:06:14 -08:00
qctecmdr
928becdd70 Merge "q2spi-msm-geni: Add system suspend and resume support" 2024-01-17 02:06:13 -08:00
lixiang
1bce7a89c8 soc: qcom: hab: Add sanity check for dmabuf size
When exporting a dmabuf buffer, the total size of the buffer should
NOT be less than the export size.
Added a sanity check for it and return -EINVAL if detected.

Change-Id: Ib9b03ef37bcc6ef13dca58d131f872332782eb55
Signed-off-by: lixiang <quic_lixian@quicinc.com>
2024-01-16 22:59:21 -08:00
Kalpak Kawadkar
b2cddeafb4 modules.list.msm.niobe: Add clock modules to first stage init
Add tcsrcc, clk-rpmh and cpufreq-hw modules to modules list,
to enable them to load during first stage initialization.

Change-Id: I994e8af0cdc97aaecd40178acf3b114f03cdb943
Signed-off-by: Kalpak Kawadkar <quic_kkawadka@quicinc.com>
2024-01-16 21:27:26 +05:30
qctecmdr
828d896d4a Merge "defconfig: Enable CONFIG_CHR_DEV_SG for Pitti" 2024-01-16 07:38:55 -08:00
Manish Pandey
5aa23dd127 scsi: ufs: qcom: Add support to identify ufs device version
Add support to identify ufs device version using sdam nvmem
cell and calibarate ufs phy according to ufs device version.

Change-Id: I90f834b2010ecc5bd684dcf291f4e2996c10267d
Signed-off-by: Ram Prakash Gupta <quic_rampraka@quicinc.com>
Signed-off-by: Manish Pandey <quic_mapa@quicinc.com>
2024-01-16 20:22:21 +05:30
qctecmdr
2fed1352e4 Merge "bazel: Add secure hibernation for module S2D" 2024-01-16 01:39:57 -08:00
qctecmdr
457765af2c Merge "ufs: phy: Add phy wrapper file for sa8295" 2024-01-16 01:39:56 -08:00
qctecmdr
f1a3034d99 Merge "clk: qcom: gcc-mdm9607: Update apss_ahb_clk_src freq table and parent" 2024-01-16 01:39:55 -08:00
qctecmdr
7d23892e0b Merge "bazel: Add SHOW RESUME IRQ module" 2024-01-16 01:39:54 -08:00
qctecmdr
4c2668e9dd Merge "usb: dwc3-msm-core: Enable Sparse Control transaction for controller" 2024-01-16 01:39:53 -08:00
qctecmdr
c7fd23507f Merge "remoteproc: soccp: Introducing SoCCP" 2024-01-16 01:39:52 -08:00
qctecmdr
b063ebd3f1 Merge "defconfig: sdmsteppeauto: Enable SHOW_RESUME_IRQ" 2024-01-16 01:39:51 -08:00
Akhil Budampati
ef376e0763 defconfig: pitti: enable fbe modules
Enable the following modules which enables
data encryption (FBE) using wrapped keys.
CONFIG_QTI_CRYPTO_COMMON
CONFIG_SCSI_UFS_CRYPTO_QTI.

Change-Id: I4bbd01f3f559be6cc8a82d011938cb7684b08919
Signed-off-by: Akhil Budampati <quic_abudampa@quicinc.com>
2024-01-16 15:01:20 +05:30
Ya Tang
07042f75e2 soc: qcom: hgsl: Enable hgsl driver for auto gvm
Enable hgsl driver for auto gvm.

Change-Id: Ic9e5751c973a89b57bda09ce431d0f3eae1066af
Signed-off-by: Ya Tang <quic_yatang@quicinc.com>
2024-01-16 15:46:48 +08:00
Wasim Nazir
8f52f725e9 module.list: Add watchdog support for pitti
Add core support and virt-wdog in firststage.

Change-Id: If764fef0ee0785a63b7018b9819c156cebefeb59
Signed-off-by: Wasim Nazir <quic_wasimn@quicinc.com>
2024-01-16 12:20:30 +05:30
Wasim Nazir
bf084736ff arm64: defconfig: Enable watchdog for pitti
Enable watchdog and related configs for pitti SoC.

Change-Id: Ic6307941495078416efa5036953f4325b0dbcdf6
Signed-off-by: Wasim Nazir <quic_wasimn@quicinc.com>
2024-01-16 12:20:25 +05:30
Manish Pandey
54a5e33dbc defconfig: Enable CONFIG_CHR_DEV_SG for Pitti
Enable SCSI Generic Kernel Module support for Pitti
to enable communication from kernel for underlying
storage devices using the SCSI protocol.

Change-Id: Ibb80ae11692e2fbf16172dba1759e33d20a1f89f
Signed-off-by: Manish Pandey <quic_mapa@quicinc.com>
2024-01-15 21:36:34 -08:00
qctecmdr
d99781c593 Merge "usb: phy: snps: Add support to vote/unvote ref_clk" 2024-01-15 20:34:47 -08:00