Adding history to track the FST lock/unlock events; this
would come in handy in debugging deadlock issues.
Change-Id: I40f783e72e516330fdf71ac91553bc7c4338b82a
CRs-Fixed: 2854397
Increase the number of TWT peers allowed to 32 from current
default value of 2.
Change-Id: I9c081f602af059c940223ea2f66ea257a7d44f07
CRs-Fixed: 2825861
Modify connect start code in interface manager by
moving disable roam and tdls link teardown notify
APIs from HDD to if mgr. Alongside, move tdls link
teardown notify API from HDD to if mgr in start bss API.
Also, move the tdls link teardown API to TDLS module from
HDD module as TDLS should manage the wait logic.
Change-Id: I09fa31878563a3daaa7c5fde46327475829317b3
CRs-Fixed: 2811807
Classify the ICMP request packet and mark it to be
sent to the firmware in the packet control block.
Add an INI which indicates the time interval for
marking the ICMP requests to be sent to FW.
For the INI value:
-1, indicates to mark all ICMP requests to be sent to FW.
0, indicates that none of the ICMP requests will be sent to FW.
> 0, indicates the time interval for marking ICMP requests
to be sent to FW.
Change-Id: Ia9c41765cef64a4f5fd19019df595c9e7fd657e9
CRs-Fixed: 2826444
Currently RX_DIAG_WQ_MAX_SIZE is set to 0. Which means, there is no
limit to the number of FW diag events that can be queued for processing.
This may result in SKB memory pool is being blocked by FW diag events.
To avoid this, set RX_DIAG_WQ_MAX_SIZE default value as 1000.
Change-Id: I44c69f910a512d8f9a1aed0809c55c6d93737cb2
CRs-Fixed: 2824443
Currently, FW diag logs, management frames and stats responses are
processed in worker context. Because of this, there is a possible
out of memory scenario when there are huge number of diag events
waiting in work queue.
To address this, process diag events in a separate worker thread and
set the limit for the number of diag events that can be queued in
work queue.
Change-Id: Ib9f7b8042479e8b2f4d67c9a4250932b018f29a4
CRs-Fixed: 2821534
New files are created for 6ghz scan functionality. Add the same
for compilation.
Change-Id: I3f715db50fb5020afea74297794d07ddc5b39913
CRs-Fixed: 2806415
Use separate hang reason for case that lack of credit after suspend.
Meanwhile add hang buf offset check to avoid overflow.
Change-Id: Ic794d02672cd663598da66b9e75924c41b5ef0e8
CRs-Fixed: 2801343
Add feature GENERIC_SHADOW_REGISTER_ACCESS_ENABLE to enable
shadow reg write for generic shadow registers.
This is enabled only for HSP.
Change-Id: I90302aa050baa9128313dbaf0c4ab57e426289b3
CRs-Fixed: 2794917
User sends wfa test configs to host using vendor command
QCA_NL80211_VENDOR_SUBCMD_WIFI_TEST_CONFIGURATION. Host parses the
vendor command and sends wfa test configs to FW using WMI command
i.e. WMI_WFA_CONFIG_CMDID
Change-Id: I5aa0bc8b0a0064828b48368e47d53a5ad5e7ff2f
CRs-Fixed: 2772013
Currently ll_stats and get_station requests are sent back to back
from user space. The firmware time difference between these two commands
results in extra sleep and wakeup for Q6.
To avoid this extra Q6 sleep and wake, send both requests in a single
command from the driver if the firmware supports that operation. Cache
the get_station results in the driver until user space request reach
to the driver.
Change-Id: Ic7c6232558b9411106bf3fb88ec8d9b0b28b045d
CRs-Fixed: 2778476
The naming of the osif files and functions is not correct as
these files and functions include wlan_cfg80211 as prefix
instead of osif.
Correct file name and function name should contain the component
name first, followed by feature name followed by method.
Change-Id: I26a592de71bbde0f731436acb970778c85d19226
CRs-Fixed: 2786807
Enable feature to send EXIT_POWER_SAVE QMI from host instead of
HOST_WAKEUP_FROM_SLEEP WMI. When FW receive EXIT_POWER_SAVE QMI,
it will implicitly consider that it also received HOST_WAKEUP_FROM_SLEEP
and send ACK for it through CE2.
Change-Id: I14515b62ff3ff1b4ed66397039ce180a99d49d43
CRs-Fixed: 2779383
Since some platform driver does not support for PCIE gen switch,
Using macro PCIE_GEN_SWITCH to control whether function
cnss_set_pcie_gen_speed is invoke or not.
Change-Id: I478cd6426b005014e85c0b3c1c31963045d7322b
CRs-Fixed: 2767110
Since PCIE Genoa has separate wlan fw patch for
mission mode(amss.bin) and ftm mode(genoaftm.bin),
but cnss2 platform driver always try to load amss.bin,
which is not feasible. So add this new interface for
cnss2 to get correct driver mode and update the fw
patch name before it start downloading wlan fw
Change-Id: I44565c5f50aa03bbc407ee135ef5b02a040b0df6
Currently qdf frag API's are not compiled, enabled those
API's compilation since they are used in DP TX frag path.
Change-Id: Iadd0710beb2220fb560b8873a3a8736b6a66b7ca
CRs-Fixed: 2777139
- Use sme roaming api's instead of converged
roaming api's.
- Add debug logs in if mgr api's.
- Fix typo in Kbuild file.
- Fix compilation errors.
- Fix comments for readability.
- Update disconnect functions so parameter type matches.
Change-Id: Ia0adf6f79036e9348bf4ebb6237a5e25ef813a21
CRs-Fixed: 2774509
Currently line number is not useful in the logs and to print
the line number consumes lot of memory in driver text area size.
To reduce the driver size add feature flag to enable/disable
line number logging in the driver.
Change-Id: Ie11e3425cb61edad09c0da0337d0daa18e2a56d6
CRs-Fixed: 2766244
In order to improve the Genoa DBS KPI, need to
increase the IPA tx complete ring size from
1024 to 2048. And the tx buffer count also will
increase from 1023(1024-1) to 2047(2048-1) according.
But in fact, as for wlan fw, it just only reserve
1500(1100 for 5G, 400 for 2.4G) tx desc for packets
from IPA, so some tx buffer will not used here,
which will waste memory. So to save some memory,
export CONFIG_LIMIT_IPA_TX_BUFFER for platform
configuration to limit the max IPA tx buffer count
Change-Id: Id5d4c5a220b588747f3d1981627f6253d7c3305b
For older targets thermal mitigation is supported for the apps.
In moselle there a new processor wpps on which firmware runs,
this commit adds the support for the thermal client wpps.
Change-Id: I89896dce808807486ef56b90812369f3d5f4b270
CRs-Fixed: 2757566
DBR_MULTI_SRNG_ENABLE is used to init DBR for both bands of DBS chip.
Some pltforms won't set CONFIG_CNSS_QCA6750 to n if chip isn't
Moselle. This change defines DBR_MULTI_SRNG_ENABLE if
CONFIG_CNSS_QCA6750 isn't equal to y.
Change-Id: I0cf726b542196c57d90cf38ec0db0f4ab38d3358
CRs-Fixed: 2759775
Change feature flag name due to address alignment is
required from HW design perspective
Change-Id: Ia80b6371f50db144336aeaaf2db2ecdc77ac0380
CRs-Fixed: 2748507
Take care to update the EAPOL Tx frame DA with AP mac addr if
DA is broadcast address as EAPOL BC doesnot make sense.
Change-Id: Id58b7b7971f5a7c11de0b46c6189a6e6ad1917ab
CRs-Fixed: 2745826
For SAP on DFS channel, the PCIe link down should be prevented
so that HalPhy can access DDR memory to report Radar found event.
Change-Id: Ia256d5df4d59071830d09c3f4821d73196327128
CRs-Fixed: 2740443
Update MULTI_IF_NAME while DYNAMIC_SINGLE_CHIP is not
"wlan" to support dual wlanhost driver load case
Change-Id: Id7c4e7b6e8c14fe0ba64b3187ec46f7b248058cb
Currently there are 2 places where max number of keep live pattern
are defined:
1. #define WMA_MAXNUM_PERIODIC_TX_PTRNS 6
And it can be configured by CONFIG_CFG_MAX_PERIODIC_TX_PTRNS.
2. #define MAXNUM_PERIODIC_TX_PTRNS 6
And it is hard coded value.
It is possible to have different values defined on some platform,
so we might give tgt_cfg->num_keep_alive_pattern value as 2,
but still allow more than 2 keep alive patterns adding to target,
where assert might happen.
Fix it by defining max number of keep alive pattern at one place.
Change-Id: I70ec3fa2e56a39cf8086750d966d95e41b2b75a7
CRs-Fixed: 2745443
On some cases, dp_rx_thread can not handle nbufs in time,
then a large number of packets are pending in
rx_thread->nbuf_queue, which run out of system memory at
last and failed to malloc new buffers for refill buffer ring,
fw crash is encountered. To avoid this, drop RX packets when
the pending number becomes large.
Change-Id: Ie4e001dc584821cf68253aa3a15a5fd72394c736
CRs-Fixed: 2737181
Enable PM QoS support for 5.x kernel by adopting dev PM QoS APIs to
request device structures for CPUs and then requesting QoS on those CPU
devices.
Change-Id: I9c7565b44a72145e11178fe360f413ff578142cf
CRs-Fixed: 2734025
Add configuration feature CONFIG_WAPI_BIG_ENDIAN to
enable or disable BIG ENDIAN WAPI configuration based
on device type.
This was done as newer chipset firmware expects the
WAPI seq in big endian format and to maintain backward
compatibility with the older chipset firmware.
Change-Id: I972ca89e601b706e53408b0751c265d0aa311029
CRs-Fixed: 2746749
Enable logging feature which helps to check rx ring refill failure.
Currently rx ring refill count is updated same time from multiple
places without protection, so use atomic variable for refill count.
CRS-Fixed: 2740225
Change-Id: Icd88d351cb15d0f18edf0b986e4de95dbe4e6989