Add support for regulator: 3.3V M.2, to enable
it based on the entry in device tree.
Change-Id: I4716b9ad6fb6d116342ef0aa9157989f9dfbf152
CRs-Fixed: 3795246
Dump_enabled need to be checked before invoking qcom_dump for
pushing the Wlan FW dump to file system. Otherwise SSR gets stuck.
CRs-Fixed: 3805707
Change-Id: I7bd5d0579f71c1b3fa88fc41cd274bc8f432dab5
PCI bus resuming should be treated as fail once MHI
resume fails, to avoid the following operations those
depend on the result.
Change-Id: If3d21abf95cc2816bf6c34cb950ff430eee022d3
CRs-Fixed: 3795957
The remote proc name for wpss on volcano is
'9bb00000.remoteproc-wpss', the restart level changing
on which will be ignored by icnss platform driver
unexpectedly due to the maximum length for filtering the
name is too short.
To fix it, enlarge this maximum length to 100 bytes
according to implementation of remote proc.
Change-Id: I42148cb2f8d0821521acf06e5f54d4ebaf439985
CRs-Fixed: 3794773
For dual chip solution, first chip may fail to probe because of pcie
driver is not ready. During second chip probing, first chip may retry
to probe. So, second chip may set/get plat_env[0], first chip may
set/get plat_env[1].
If sencond chip not attached, plat_env[0] will be cleaned. When
cnss_pci_probe() is called by first chip, cnss_get_plat_priv_by_rc_num()
will call plat_env[0]. However it is already NULL.
Change-Id: Ib959b1a524bf777fc6a826b2771611cb28b8cb99
CRs-Fixed: 3778085
Checking smp2p_state using IS_ERR_OR_NULL returns true every time
for Adrastea based targets.
So add a new API to validate smp2p state which returns true only
if the device id is WCN6750_DEVICE_ID or WCN6450_DEVICE_ID or
wpss_supported is enabled.
Change-Id: I01237d9e7b47dd666a4987920ca73a3f8f584c87
CRs-Fixed: 3758894
Add cmem support for wcn7750 and pass the mem info
as part of soc info to wlan host driver.
Change-Id: Icb40d8cfe50cdd160471b8210a67ce9dc8dd3ad0
CRs-Fixed: 3750961
The Mbox interface requires structure 'qmp_pkt' which is defined
only when kernel config CONFIG_MSM_QMP is enabled, so add
conditional compilation for these interfaces (controlled by
config CONFIG_MSM_QMP).
While at the same time, qmp_get/qmp_put/qmp_send are controlled
by kernel config CONFIG_QCOM_AOSS_QMP, but they are defined
even when CONFIG_QCOM_AOSS_QMP is disabled, so conditional
compilation is not needed.
Change-Id: I0f793ae3661fb901edc857af0b1d4191d7c113f8
CRs-Fixed: 3712102
qcom_smem_get() returns 'ERR_PTR(ENODEV)' when Secure HW feature
is not enabled (related kernel config: CONFIG_QCOM_SMEM), add
the checking for this case.
Change-Id: Id3c6f8407a4eb4bc2124014503cc50bb99e90235
CRs-Fixed: 3769852
Add wrapper __cnss_get_mhi_soc_info() to get SoC info
before registering MHI controller.
It calls mhi_get_soc_info() if downstream MHI bus driver
is enabled(CONFIG_MHI_BUS_MISC is enabled), while reads
register for SoC hardware version directly if not.
Change-Id: I97e53bf0a7e28b2b1027d8de5eaf9fc82bcd5cee
CRs-Fixed: 3712133
This reverts commit I55d554c4dc7d01ed82fffe79f666b340b1004765.
Default RC speed should be restored, shouldn't be restored to Gen2.
Change-Id: I23369aea1391c9e20c7aabe10506a7c9c37a4ba7
CRs-Fixed: 3702776
When FW supports segment CALDB memory in memory request,
it will request memory with new type
QMI_WLFW_MEM_CALDB_SEG_V01.
Change-Id: I84b62436ea2616cb2d663c604ac4af8a8d9966b8
CRs-Fixed: 3763980
To avoid watchdog bark in 10s timeout due to compaction latency in very
bad fragmentation situation, Remove __GFP_DIRECT_RECLAIM flag to kzalloc
to avoid delay, which will help to claim memory faster.
Change-Id: I9d57e28c6e94dbd5cf02aaa9c6f84fe4b60fe36d
CRs-Fixed: 3746405
Add support to determine if CNSS and Audio share
IOMMU group and do iommu_map/unmap only in the
case of distinct iommu groups for direct link
datapath.
CRs-Fixed: 3714345
Change-Id: I6134e9d732052fd492e0f20d538e86ba96c14c4d
Fix potential NULL pointer dereference for tme_lite_mem
and tme_opt_file_mem, which are captured by static
analysis tool.
Change-Id: Ib2540669c55e771598dd21d8c2ae3eb297ffa67f
CRs-Fixed: 3716873
DRV last connected flag is cleared based on return from
host driver runtime_resume callback. In host triggered
SSR case runtime_resume callback return success without
actually resuming the bus and clearing DRV last connected
flag. When CNSS driver actually tries to resume the bus,
based on DRV last connected flag it calls MHI resume instead
of MHI DRV resume and fail to resume the bus. Bus resume
failure results in MHI driver go to bad state and fail to
trigger RDDM in device using SYS_ERR.
Fix this issue by clearing DRV last connected flag only after
bus resume is success.
Change-Id: Ia904f6965c2a2cbe0a483cf02ced91a09775ca62
CRs-Fixed: 3720847
For the cases where SOL is not enabled, Host REQ
reset will be used for second RDDM entry. If Host
REQ reset is success, start RDDM timer to wait for
RDDM status callback from MHI. If RDDM timer get
timedout read EE register to check for RDDM state
and schedule recovery.
Change-Id: I34253526ff4b20aedf8ab8f1f49831f68a3e0a35
CRs-Fixed: 3727389
This reverts Change-Id I848309440fdffd6517463e18190c03c1b7ed9269.
Reason for revert: Separate FW Binary not required
Change-Id: Ib694d38922f81895ce6bc01f4e38f95813625730
CRs-Fixed: 3726340
Currently cnss_get_fw_cap is checking both FW and Audio cap
to enable direct link, add new API to check audio node available
for direct link. So that this API can be queried when direct link
is being used.
Change-Id: Ic2032b338da74021f2b6c483c9480f185554f2d5
CRs-Fixed: 3711887
Update icnss2 driver to support WFC call TWT config
params exchange between IMS and WLAN firmware.
Change-Id: Ib565019c0b51db3cc3def8a994094eeeed7a701a
CRs-Fixed: 3710947
Print address range for minidump region when
CONFIG_QCOM_MINIDUMP is not enabled.
Change-Id: I7d162bf4b7a057d806df07eda47740bf2471ba1b
CRs-Fixed: 3704383
Fix misfiring of DEV SOL interrupt during enable_irq().
Ignore DEV SOL interrupt in case of device power off
as it is expected as part of off sequence.
In case of HOST triggered recovery, CNSS driver
tries to put device to RDDM first using MHI_SYS_ERR
and HOST_RESET_REQUEST if MHI_SYS_ERR fails. With
SOL enable, replace HOST_RESET_REQUEST with HOST_SOL.
Change-Id: I90c1a2dbd68c4c9c2e56d87dd1304a6ab0db53eb
CRs-Fixed: 3590408
As DIAG is now deprecated on Peach chipset onwards, create a new
MHI config struct that removes DIAG related channel configuration.
Then, register this new struct for peach chipset onwards.
Change-Id: I1ba1cadaa0d1a022d6c9af6d8ff14942d4f219cf
CRs-Fixed: 3684700
When FW supports segment CALDB memory in memory request,
it sets CALDB_SEG_DDR in its capability which is sent to
host by Target Cap QMI message.
Change-Id: I84b62336ea2616cb2d663c604ac4af8a8d9966b8
CRs-Fixed: 3681105
Send QMI message with SEC, RPR and DPR file information to WLAN FW, to
download TME binaries (sec, rpr, dpr files)
Change-Id: I0a4ab7ab127d493ef62d14658be2aa08b7d41606
CRs-Fixed: 3684131
Update TME-L patch name as per the target version 1.0 and change the
patch file location.
Change-Id: I1e5e8e6ac330a093f61e34029f8aec35fd3f26aa
CRs-Fixed: 3687807