Commit graph

10,238 commits

Author SHA1 Message Date
Paul Zhang
a360e37d02 qcacmn: set pdev id to 0xFF when set country code
From firmware perspective, host only sets 5 GHz regdomain hence 2 GHz
uses default setting and firmware does not update channel list event
for all phys according to the new country code.
Therefore sets pdev_id to 0xFF in function reg_set_country and it is
mapping to WMI_PDEV_ID_SOC when issue wmi command
WMI_SET_CURRENT_COUNTRY_CMDID as firmware required.

Change-Id: I0eb84db9f6d77c0473161cc4ffc0dcebd31c3d45
CRs-Fixed: 3239644
2023-05-23 23:20:02 -07:00
Amit Mehta
bbf3081a79 qcacmn: Get wow nack reason code
Currently, Fw did not set NACK reason code
to Host when Fw is not ready for WoW.

As part of the new change, Fw will send NACK
reason code along with WoW NACK to host.
Make changes in host to parse NACK reason
code from the received message.

Change-Id: I17ee99cb302ff546731a46d3ce03977c3c3d5a67
CRs-Fixed: 3481189
2023-05-22 12:58:34 +05:30
CNSS_WLAN Service
89a6797c29 Merge "qcacmn: Add new INI to separate scan policy for rest of world users" into wlan-cmn.driver.lnx.2.0.8 2023-04-05 01:48:38 -07:00
CNSS_WLAN Service
9887ce4ed6 Merge "qcacmn: Send driver disconnect internal reason code to user space" into wlan-cmn.driver.lnx.2.0.8 2023-04-05 01:48:29 -07:00
Asutosh Mohapatra
c786671eaa qcacmn: Add new INI to separate scan policy for rest of world users
Currently host drops an AP from scan list if host country is set to
US and AP country is non-US. This implementation violates our
standard regulatory scan policy.

To address this issue, introduce a new INI to differentiate
between our standard regulatory policy with others.

Change-Id: Id72f871653e31969c4d1b147cb3c557f90a6c8f6
CRs-Fixed: 3361720
2023-03-27 17:02:19 +05:30
Vinod Kumar Myadam
d7687fb293 qcacmn: Fix OOB in util_gen_new_ie
For example, If tmp_new[1] = 3, subie_len=160,
tmp_new + tmp_new[1] + MIN_IE_LEN) - sub_copy will be 159.
In this scenario, while condition gets true (159 <= 160)
In if condition (159 >= 160), we are not breaking the loop in if.
tmp_new will get incremented, tmp_new will point at 159,
tmp_new[1] will point at 160, tmp_new[2] point at 161.
So, we are accessing one byte out-of-bound value.

To fix accessing out-of-bound value subtract one from the subie_len
in while and if condition to avoid this scenario.

Change-Id: I624585323963b6d79acf9ff0f96ec17e0b415c2d
CRs-Fixed: 3358833
2023-03-23 09:48:26 +05:30
Vinod Kumar Myadam
074d285597 qcacmn: Fix out-of-bounds of src_freq
When handling WMI_ROAM_SCAN_STATS_EVENTID,
the number of channels scanned for each roam trigger is fetched from
wmi_roam_scan_info TLV (wmi_roam_scan_info->roam_scan_channel_count),
The total number of channels for all the roam triggers is fetched from
param_buf->num_roam_scan_chan_info.

chan_idx is the index used to fetch the current channel info TLV to be
read. So if wmi_roam_scan_info->roam_scan_channel_count provided by
firmware exceeds the total param_buf->num_roam_scan_chan_info starting
from given chan_idx then OOB access of event buffer can happen.

To avoid this, validate the sum of the current chan_idx and
src_data->roam_scan_channel_count against
evt_buf->num_roam_scan_chan_info.

Change-Id: Ied94464d1f12690cf8832962b94595c2e00c33f8
CRs-Fixed: 3357714
2023-03-15 23:25:27 -07:00
Surabhi Vishnoi
1ff1a00b32 qcacmn: Fix 6 GHz bss HE capable beamformee score
Currently, BSS beamformee score is calculated from vht_cap or
eht caps, so for 6 GHz HE capable BSS it will calculated to zero.
Due to this 5 GHz will always get selected compared to 6 GHz BSS with
all other capabilities and conditions same in both BSS as 5 GHz
will have more total candidate score.
Fix this issue by correct calculation of AP beamformer capability
in case of 6 GHz HE BSS.

Change-Id: I0f3285ce1c5c1aeeba624c5371ff0f884ae78c58
CRs-Fixed: 3351991
2023-02-08 21:30:45 -08:00
Vinod Kumar Myadam
52274954d0 qcacmn: Fetch fw cap to support p2p + p2p concurrency
Fetch fw capability to support p2p+p2p concurrency and
store cap info in 29th bit of soc_fw_ext_caps.

Change-Id: Id8e4c0310f8db503a2997e8aed5a6f1ce813dcc7
CRs-Fixed: 3032068
2023-02-08 01:17:32 -08:00
Vinod Kumar Myadam
c187263d12 qcacmn: Add P2P_P2P_CONCURRENCY_SUPPORT wmi service support
Add P2P_P2P_CONCURRENCY_SUPPORT service capablity to
validate whether fw can support p2p concurrency
support or not. when firmware advertises this flag it
can support MCC,SCC, DBS for p2p-GO/GC + p2p-GO/GC.

Change-Id: Ifec4bf984595b06374be9024601733c8537a9c3e
CRs-Fixed: 2984165
2023-02-08 01:17:21 -08:00
Ashish Kumar Dhanotiya
a4166727b9 qcacmn: Add 11d offload APIs under correct feature flag
Currently host driver defines 11d offload APIs under
HOST_11D_SCAN feature flag which is not correct.
Add 11d offload APIs under TARGET_11D_SCAN feature flag.

Change-Id: I0d3205b215c9fc363a71c4e7a6b54e40fb10a964
CRs-Fixed: 3387603
2023-01-24 17:01:13 +05:30
Krupali Dhanvijay
b63e48a42a qcacmn: Add a new QCA vendor attribute to configure wifi calling (wfc) state
Add QCA_WLAN_VENDOR_ATTR_CONFIG_WFC_STATE vendor attribute,
Userspace uses this attribute to configure wfc state to
Driver/Firmware. The Driver/Firmware uses this information to
optimize power savings, rate adaption, roaming, etc.

Change-Id: If58bd1e64216de81af6cf82eaabd740b85729eac
CRs-Fixed: 3343034
2023-01-12 19:52:54 +05:30
chunquan
6bffceddfc qcacmn: Realloc memory for wmi_service_ext_bitmap
Realloc memory for wmi_service_ext_bitmap when
WMI_SERVICE_AVAILABLE_EVENTID event come, and
the num of wmi_service_ext_bitmap large then
previous num.

Change-Id: I2800fe3274e5516369486ef065ce03ba121bd5b3
CRs-Fixed: 3346739
2023-01-05 06:59:23 -08:00
Alan Chen
2a7bc9c287 qcacmn: Remove logic to enable/disable wake msi for drv systems
Remove logic to enable/disable wake msi for drv systems. Today, during
WoW suspend sequence, between hif pci bus suspend and hif pci bus
suspend no irq, wake msi is getting disable temporarily. In case
fw toggles wake msi during this period, then the wake msi is lost,
which can lead to device not waking up for fw triggered wakeup.
Add the fix to remove enable/disable wake msi from suspend/resume
path and keep wake msi always enabled.

Change-Id: Idad0805f66ead4079d67577fa1151f73567511a3
CRs-Fixed: 3042261
2023-01-05 06:59:12 -08:00
Krupali Dhanvijay
149e4a4f32 qcacmn: Send driver disconnect internal reason code to user space
Send the driver disconnect internal reason code as an event to user space
using QCA_NL80211_VENDOR_SUBCMD_DRIVER_DISCONNECT_REASON vendor command.

Change-Id: I0027675b809b94628b6c0c4b8e8286e38fa9f47d
CRs-Fixed: 3371398
2023-01-03 13:46:24 +05:30
Vulupala Shashank Reddy
f69cbbc2e7 qcacmn: Fix FILS Discovery rx frames capture in packet capture mode
Currently the FILS Discovery rx frames are dropped in
tgt_mgmt_txrx_rx_frame_handler considering them as unspecified
packets as action category for FILS Discovery is not defined.

Define FILS Discovery action category so that the FILS Discovery
will not be considered as unspecified frames and dropped while
processing.

Change-Id: I72398caf3cbb1f7d53d5f97da9d1997af2b33595
CRs-Fixed: 3346195
2023-01-03 10:33:57 +05:30
Srikanth Marepalli
85175c4313 qcacmn: Roam control configuration for 6 GHz in full scan only on prior discovery
During the roam scan, if there are no desired APs found in the partial
frequency list, an immediate full scan on all the supported frequencies
is initiated as a fallback. This would include the 6 GHz PSC
frequencies. Define an attribute to allow that behavior to be modified
to include PSCs only if 6 GHz use has been detected.

Change-Id: I81eb9b20c2953e6b0dbf4138b31547db82d7397f
CRs-Fixed: 3351706
2022-12-13 02:51:51 -08:00
Rahul Gusain
89ac6b7304 qcacmn: Send fils discovery template to wmi layer
Add support to send Fils discovery template via target if

Add func to compute shortssid with the help of shortssid table

Change-Id: I78fa50641ee5ae0c338719c4cec91573a212f396
CRs-Fixed: 3114903
2022-12-06 22:22:42 +05:30
Srikanth Marepalli
dee1030535 qcacmn: Add a vendor attribute for roam control configuration for full scan
During the roam scan, if there are no desired APs found in the partial
frequency list, an immediate full scan on all the supported frequencies
is initiated as a fallback. This flag controls the frequency list
creation for full scan on the following lines.
1 - Full scan to exclude the frequencies that were already scanned by
    the previous partial scan.
0 - Full scan to include all the supported frequencies irrespective of
    the ones already scanned by partial scan.

Change-Id: Id48ae28e6d0e719b9db9b2e73bd76f9be1ea0b3e
CRs-Fixed: 3343567
2022-11-30 00:27:36 +05:30
Srikanth Marepalli
d1bea0a4f9 qcacmn: A vendor roam control configuration for delaying hand off for RX
Introduce a run time roam configuration for "hand off delay for RX".
This value, in milliseconds, will delay the hand off for the specified
time to receive pending RX frames from the current BSS.

Change-Id: I961109a2f9287a611ae8f4b38e2ea824ecf9c559
CRs-Fixed: 3329952
2022-11-23 19:31:34 +05:30
Surabhi Vishnoi
aa50727284 qcacmn: Update mgmt action category
Host updates newly added action categories in enum mgmt_action_category.

Change-Id: I86048f59a6a3917685c18f07b6cb103fc809837f
CRs-Fixed: 3262361
2022-11-15 20:51:08 -08:00
Surabhi Vishnoi
bb50ad7900 qcacmn: Add support to handle vendor specific protected action frame
Host add support to handle action frames with category field
ACTION_CATEGORY_VENDOR_SPECIFIC_PROTECTED(vendor specific
protected action frames).

Change-Id: Iae105fe7c5c37438b29d9b2bc135961f795c5ab8
CRs-Fixed: 3262366
2022-11-15 09:16:11 -08:00
Alan Chen
37175948ba qcacmn: Change log level to debug for hif_runtime_lock_init/deinit
To avoid excessive logging, we whould not logs RTPM lock init and
deinit to the console. Thus, change the log level to debug.

Change-Id: Ib11045fe50f729b0580284fa913da48d3a59b323
CRs-Fixed: 2927959
2022-11-09 05:46:31 -08:00
Krupali Dhanvijay
cf9100c51d qcacmn: Update pmk for roamed AP to pmk cache table
Assume AP1 and AP2 are SPMK APs. For SPMK AP(s), Host
should add an entry of an AP in PMK cache table like below in
two cases only:
Case 1. When DUT successfully associated with SPMK supported AP
            In this case host update “is_spmk_ap” flag in PMK
            table by parsing beacon of associated AP after
            successful connection.
Case 2. When DUT successfully roamed to SPMK supported AP
            In this case host update “is_spmk_ap” flag in PMK
            table by parsing roam sync indication event.

In case of connection with SPMK AP, Host selectively deletes PMK
entry for other SPMK supported AP(s) on basis of “is_spmk_ap”
flag and maintains only one entry for all SPMK AP(s). And host
sends the same single PMK in RSO for further roaming to SPMK AP.
Initially, DUT is connected with AP2. Then Disconnection happens with
AP2 due to NUD failure. After disconnection, the upper layer sends
flush PMK requests for AP1 and AP2. Host deletes old PMK entries for
both APs. Now upper layer sends a set PMK request for AP2. Host adds
AP2 entry in PMK cache table but host does not set "is_spmk_ap" flag
in PMK table for this entry as DUT is not connected to AP2. Now host
receives a connect request for AP1 from the upper layer. DUT
successfully associated with AP1 by performing full SAE authentication.
Host adds an entry for AP1 in the PMK cache table and sets "is_spmk_ap"
flag for AP1 but fails to delete the entry for other SPMK AP(s), here
AP2, from PMK cache table. This is because of "is_spmk_ap" flag is not
set for AP2. At this point of time below is the PMK cache table entry
for SPMK AP(s): The Host PMK cache table has two entries for two SPMK
APs.

   BSSID       PMK     is_spmk_ap flag
    AP2       PMK2           0
    AP1       PMK1           1

Now FW roams to AP2 using PMK1. Host process roam sync indication for
AP2 and updates "is_spmk_ap" flag for AP2 in the PMK cache table. As
Host has a stale entry for AP2 in the PMK cache table, Host sends AP2’s
PMK (here PMK2) in RSO command which firmware will use for further
roaming but roaming fails due to invalid PMK, as target SPMK AP expects
PMK1 in reassociation request.

To handle these scenarios, FW should send PMK info of roamed AP and
host override stale entry for roamed AP (if any) with roamed AP's PMK
in PMK cache table.

Change-Id: I3c6a49be065e4744e438c2762c103eb3095a2253
CRs-Fixed: 3313882
2022-11-07 15:41:07 -08:00
Rahul Gusain
f7a4bf6616 qcacmn: Add support for NAN enable rsp in non-dbs platform
Currently, in non-dbs platforms, firmware controls NAN enable/disable.
To enable NAN in non-dbs platform, host driver sends NAN generic
request to firmware and firmware enables NAN and provides generic
response to that.
But for some legacy platforms, requires enable NAN in host.
For this, firmware adds new TLV for NAN enable response and
sends with NAN generic response. Host extracts the NAN enable
response parameters from NAN generic response packet.

Change-Id: I1f4460137913780d4c262b5e40342dbb0b9a87c7
CRs-Fixed: 3263746
2022-10-30 10:35:30 -07:00
Amit Mehta
183edd48c1 qcacmn: Add a tid check for RX to avoid of OOB access
Tid in RX frame header may be larger than MAX TID allowed
value, this will lead a out of boundary array access and
lead to kernel crash at last. Change is aimed to do a TID
check and discard such frame when necessary.

Change-Id: I11f312668a5a42d690c058550f22b0f36f952104
CRs-Fixed: 3264581
2022-10-11 11:05:54 +05:30
Surya Prakash Sivaraj
c62a279eab qcacmn: Add support to send FILS DISC TX enable/disable to FW
Add support to send WFA test config FILS DISC frames TX
enable/disable to FW.

Change-Id: I5b0abed1b6fe517b12c29269da6456c48b21725c
CRs-Fixed: 2801138
2022-10-10 00:53:19 -07:00
Surya Prakash Sivaraj
7f15a2ae6c qcacmn: QCA vendor attribute to configure ER SU PPDU type
Add QCA vendor attribute to configure the driver to transmit the
Data frames with ER SU PPDU type format. This attribute is used
for testing purpose.

Change-Id: If11523ea3e6316c47181342c3acc8425da85ee1b
CRs-Fixed: 2960794
2022-10-10 00:53:13 -07:00
Surabhi Vishnoi
76a4a79953 qcacmn: Reduce log level from error to debug in wlan_vdev_get_bss_peer_mac
Bss peer can be NULL in case of vdev in disconnected state,
so change the log level from error to debug in
wlan_vdev_get_bss_peer_mac() to reduce logging in dmesg.

Change-Id: Idac08200253d83f267be3381691e10d6bd4b52bf
CRs-Fixed: 3293402
2022-09-22 21:48:01 -07:00
Ashish Kumar Dhanotiya
46df590464 qcacmn: Consider all power types to prepare client channel list
Currently driver prepares client channel list based on indoor ap
power type and this list is given to kernel. There are couple of
issues with this approach as mentioned below:
1. Based on this list kernel sends the scan requests because of
which there is a possibility that driver does not scan channels
which are not part of LPI channel list but are part of SP channel
list or VLP channel list.
2. Kernel sends start AP as well based on this channel list, since
all LPI channel are marked as NO_IR from driver and because of
which kernel dont send start AP on these chanels which leads to
SAP start failure even if there are VLP channels available.

Change-Id: I90174920df158c8b370e541034307a9a58448c29
CRs-Fixed: 3054543
2022-09-21 05:53:27 -07:00
Vulupala Shashank Reddy
661af9cfb5 qcacmn: Fix FTM rx frames capture in packet capture mode
Currently the FTM rx frames are dropped in
tgt_mgmt_txrx_rx_frame_handler considering them as unspecified
packets as action category for FTM is not defined.

Define FTM action category so that the FTM frames will not be
considered as unspecified frames and dropped while processing.

Change-Id: Ieb3980978e38b3f826f42380e29798767c8f1fe2
CRs-Fixed: 3254409
2022-08-17 22:29:47 -07:00
Asutosh Mohapatra
6bcffd57bb qcacmn: Handle gracefully if scheduler cb is not registered
Currently when firmware crashes during driver load,
message queue handlers for scheduler context are not
registered. While handling the FW down event, driver
posts the message to scheduler queue. Since the queue
handler is not registered, it results in crash.

To address this issue, handle the msg gracefully and
return error in case callback is not registered.

CRs-Fixed: 3251983
Change-Id: I5dd55e701cf332153dca1f6678271506b9690f6e
2022-08-17 16:04:02 +05:30
Vulupala Shashank Reddy
796e14de23 qcacmn: Update dp_get_pdev_param for Channel and frequency
Add provision to get channel and frequency from pdev.

Change-Id: I73f291ebf1517f7f2885853d43b873cfdbd86a93
CRs-Fixed: 3248485
2022-08-03 14:25:41 +05:30
Madhvapathi Sriram
ad79a12e2a qcacmn: Initialize wlan config structure
When RRI over DDR feature is not enabled,
the variable rri_over_ddr_cfg_valid goes uninitialzed.
This can lead to unpredictable behaviour.

Fix this by initializing pld_wlan_enable_cfg to zero
before use.

Change-Id: I485dc552201111834375411b9a493ddbf9a7505c
CRs-Fixed: 3176497
2022-07-12 09:49:43 -07:00
Rahul Gusain
2c7cff8715 qcacmn: Fix buffer overflow written in the dp_soc_interrupt_detach
Use sizeof instead of REG_BAND_UNKNOWN to fix buffer overflow written
in the dp_soc_interrupt_detach.

Change-Id: Iffad59346c487e34632f1c60b2c88e635f6e83a0
CRs-Fixed: 2822433
2022-07-12 16:21:46 +05:30
Surya Prakash Sivaraj
632f6b3e9e qcacmn: Update preauth candidate entry to scan table
During SAE roam auth offload, update the beacon/probe response
frame coming from the FW via WMI_ROAM_FRAME_EVENTID into the
scan db.

When the bss info of the preauth candidate is unavailable in
the host/kernel scan entry, supplicant fails to determine the
proper SAE PWE config of the peer and the commit request fails.

Change-Id: I8537147104f30b74ffb2e87946f2e5f4b129f0df
CRs-Fixed: 3075460
2022-07-08 09:07:34 -07:00
Yeshwanth Sriram Guntuka
3c030c2086 qcacmn: Add ini to set priority for TC ingress filter
Add ini support to configure TC ingress filter priority
value which would be used for TC based dynamic GRO.

Change-Id: I1742f4539353939e3a40ff4096b3f833f2029b12
CRs-Fixed: 3206817
2022-07-05 15:16:10 +05:30
Yu Tian
9bb66a7d99 qcacmn: Set BA status to active when receiving ADDBA event
Usually, ADDBA frame exchange is handled by HOST. But when this
is offloaded to FW, an HTT event is reported and HOST only needs
to update RX tid parameters, no need to send addba resp frame again.
BA status update is in addba resp TX completion, so there is no chance
to update this field in ADDBA offload case. This change is used to
set ba status to active to make ba session in correct status.

Change-Id: Iae4a1974cf4b8c55b20862df51b14d5011aefd73
CRs-Fixed: 3201455
2022-06-22 01:55:24 -07:00
Ananya Gupta
fa5d0cffab qcacmn: Increase status size for HTT WBM completion v3
In beryllium DP, htt_tx_wbm_completion_v3 is used in which
20B are used by host and only 16B is assigned to the htt tx
status.
To fix this, increase the macro HAL_TX_COMP_HTT_STATUS_LEN
to 20 bytes.

Change-Id: I973ba1f8118488089cd6d6baac7fd589886c2164
CRs-Fixed: 3199031
2022-06-02 01:14:59 -07:00
Jyoti Kumari
ee7e4cf08b qcacmn: Skip STA scan on 6Ghz and 5ghz indoor chan if SAP is up
Currently STA can scan and come up on 6Ghz or 5Ghz indoor channel
if hardware is non-dbs and SAP is present

As part of this change, do not allow STA to scan on 6Ghz and
5Ghz indoor channel for non-dbs hardware if SAP is present

Change-Id: I97759f8b2c6a1c460d90fbb797a0e64d2532797c
CRs-Fixed: 3186406
2022-05-25 12:31:41 +05:30
Surabhi Vishnoi
e1faf4064c qcacmn: Allow rx UDP packets during roaming before peer map is received
In VoIP cases, no or minimal packet drop is expected during
roaming. Currently, data packets are dropped in host if they
are received after roam sync indication from firmware and before
peer map indication is received due to invalid peer.
This change allows rx UDP data packets during roaming before
peer map indication is received from FW if peer's auth_status
received in roam_sync_indication from FW is authorised.

Change-Id: Ic518b7cd0aef48a2b0f8c923a2e20838b07f3d1f
CRs-Fixed: 3168603
2022-05-22 17:33:29 -07:00
Sheenam Monga
528e81a13b qcacmn: Add support for lower span active and passive dwell time
Add LOW_SPAN_ACTIVE_DWELL_TIME and LOW_SPAN_PASSIVE_DWELL_TIME
macro support to keep all 2.4g/5g active/passive dwell time
same for low span scan mode.

Disable adaptive dwell to firmware so that firmware cannot
modify dwell time.

Change-Id: Iff05dd7b37a40226c61b28a1e59ea8aa8c57cb52
CRs-Fixed: 3076163
2022-05-18 01:09:37 -07:00
Sai Pavan Akhil Remella
7700a1544e qcacmn: Add mode based flags to channels in PNO request
Currently 6 GHz channel flags are not set for channels
present in the list from PNO scan request but are set for
all other 6 GHz channels which are added when either of the
two below conditions are satisfied
1. Userspace sets NL80211_SCAN_FLAG_COLOCATED_6GHZ flag
in PNO scan request.
2. At least one 6 GHz channel is present in the PNO scan req.

Add flags for channels in the PNO scan request based on the
scan_mode_6g ini configured similar to active scan request.

Add changes to remove the RNR flag for the channel if the
corresponding short SSID entry is present in the RNR db
Cache since if colocated SSID is different userspace doesn't
include corresponding 2.4/5 GHz channel information in PNO
request.

Change-Id: I22c4f7ecf65d4ab09dfbbe126aefe02f9145de42
CRs-Fixed: 3119113
2022-05-15 23:29:35 -07:00
Gururaj Pandurangi
e19169dc46 qcacmn: Reduce logging in get 6G power type for country API
Optimize the checks in reg_get_6g_power_type_for_ctry API to
reduce logging. Logs will appear only during initial connection
and not after parsing each beacon.

Change-Id: I4c4904c4825cd822d119e4ee9b2c69e96612be31
CRs-Fixed: 3094366
2022-05-14 09:12:32 +05:30
Aravind Kishore Sukla
b925919305 qcacmn: Replace kmsg logs to debug logs
Change kernel log level to debug level

Change-Id: Ib2736aff0f653d046d502d460f204bba2247246f
CRs-Fixed: 3182588
2022-05-13 17:01:16 -07:00
Gururaj Pandurangi
b8894c96e2 qcacmn: Allow STA in LPI mode if AP ctry US and advertises LPI
The existing logic is if STA and AP have different ctry code,
and STA is in ETSI, then it operates in VLP mode irrespective
of AP ctry.
New logic would be if AP ctry is US and if it advertises LPI
power type in HE ops IE via beacon, then STA can advance to
LPI mode.

Change-Id: Ifbee7052854277c3d21ccd21b65b79edb5e89f46
CRs-Fixed: 3084589
2022-05-13 12:05:08 -07:00
Gururaj Pandurangi
0b62d7f8ac qcacmn: Allow scan/connection if RF test mode/Safe mode enabled
Currently if AP and STA have different ctry codes, STA should
operate in VLP mode. And if STA ctry code is US, then scan and
connection are not allowed as US VLP is not supported yet.
However, if RF test mode or Wi-Fi Safe Mode is enabled, allow
scan and connection on this AP and STA can operate in LPI mode.

Change-Id: I513657b8e274ef07eb9e9b5fc265722cb01525de
CRs-Fixed: 3079537
2022-05-13 12:05:01 -07:00
Jia Ding
5a4270c914 qcacmn: Add support to calculate uplink delay
Add support to calculate uplink delay on a per vdev basis.
The delay calculated excludes bus delays, where packet
enqueueing time and complete time are fetched from HW release
ring.

Change-Id: I4bbcbf28b197f7a87cb822a841f1f957ebcf063b
CRs-Fixed: 2958833
2022-04-26 16:15:45 -07:00
Jia Ding
80e3b667eb qcacmn: Get buffer_timestamp from wbm release ring
Upon TX completion, get buffer_timestamp from wbm release
ring descriptor.

Change-Id: I0203b51c52a265711e62afc3a940392674ac014a
CRs-Fixed: 2978492
2022-04-26 16:15:37 -07:00
Jia Ding
d7b2a52591 qcacmn: Extend QCA vendor command for TSF to enable and disable auto report
Add TSF cmd to enable and disable automatic TSF report from the target
to the host.

Change-Id: I17b255299f55b8e78968d951824726d533a7c6e9
CRs-Fixed: 2991909
2022-04-26 10:40:22 -07:00