Commit Graph

1074 Commits

Author SHA1 Message Date
chunquan
e26d34b3bb qcacmn: Extend WMI_ROAM_STATS_EVENTID for enhanced roam
Extend WMI_ROAM_STATS_EVENTID event information for
requirement of:
1.Roam trigger related information, include timestamp,
  trigger reason, trigger condition, abort reason,
  scan type, roam status and fail reason.
2.Roam scan related information, include scan channel
  number, dwell type, max dwell time of each channel
  and total scan time.
3.all types of roam related frame information, include
  timestamp and successful or failed status for Preauth,
  Reassoc, EAPOL-M1/M2/M3/M4.

Change-Id: I1f54bc04d7cb8b083f1394989746c57c66fa29f6
CRs-Fixed: 3381545
2023-02-09 19:23:37 -08:00
Shivam Kumar
65c8964062 qcacmn: Add TDMA function pointer support for WMI
Add function pointer support for wmi to pass
the TDMA Data

Change-Id: I5e253ac3ad3d165fdf0867297d72c6841540fe52
CRs-Fixed: 3386637
2023-02-05 22:51:52 -08:00
Mukul Dhiman
c56d208844 qcacmn: Add wmi support to extract telemetry stats from FW
Add wmi support to extract telemetry stats from FW.

Change-Id: I050b22b594145739adcf7ddf8e6fc85866a27625
CRs-Fixed: 3376698
2023-01-22 22:26:01 -08:00
Mukul Dhiman
b590809644 qcacmn: Add wmi support to get telemetry stats from FW
Add wmi support to get telemetry stats from FW.

Change-Id: I7aec4ff19dc0a23755f572d3bca32f8491c60a5b
CRs-Fixed: 3376707
2023-01-22 22:25:44 -08:00
Rahul Gusain
01dc2e1bdd qcacmn: Add new host version req enum
Due to 11KV feature version update, add new enum
"WMI_HOST_VENDOR1_REQ1_VERSION_3_40" in WMI_HOST_VENDOR1_REQ1_VERSION
and convert the host enum to target.

Change-Id: Ibcd52b93b9caf3a8bbfc7fa9028664a2d3666197
CRs-Fixed: 3381254
2023-01-19 12:28:44 -08:00
Srinivas Dasari
8380ebaf9b qcacmn: Fetch fw support for fixed channel SAP in coex cases
Currently, firmware sends WMI_WLAN_FREQ_AVOID_EVENTID with set
of frequency ranges to be avoided when it finds LTE operating
around those frequencies. Host driver marks these frequencies
as unsafe and doesn't operate in SAP/P2P-GO mode.

There is a new requirement where SAP can be allowed to operate
in unsafe channels when below conditions are met,
1. Firmware advertises the capability fix_channel_priority in
   WMI_COEX_FIX_CHANNEL_CAPABILITIES through ext2 event.
2. SAP is started in a fixed channel.

Fetch the capability fix_channel_priority sent by firmware and
cache it in wlan_psoc_host_service_ext2_param to support
this feature. Add APIs to cache value received from firmware in
psoc_info->info.service_ext2_param.sap_coex_fixed_chan_support
and to fetch the same.

Change-Id: I8ceb501240bc86d6b004446f9927f4402c487203
CRs-Fixed: 3381399
2023-01-18 11:49:55 -08:00
Vijay Raj
bdbf9523bb qcacmn: Add support for token and report number in Neighbor report
In api extract_roam_11kv_stats_tlv(), request token,
response token and report number are not extracted
for neighbor report.

Add support for request token, response token and
report number for neighbor report.

Change-Id: Iefe384fe760f25d6ce1870e52817c72577f0d5a9
CRs-Fixed: 3370856
2023-01-17 01:42:02 -08:00
Jeff Johnson
213581ab0b qcacmn: Fix WMI documentation
The kernel-doc script identified many documentation issues in
the wmi folder, so fix them.

Note that in quite a few cases there is duplicate documentation in .h
and .c files, and in those cases remove the documentation from the .c
files since the interface should be documented, not the
implementation.

Change-Id: I097d5b8e8f0ba09046b7b8abe338d05a00f8cc7e
CRs-Fixed: 3372831
2023-01-11 06:53:31 -08:00
chunquan
58455ec078 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
2022-12-28 08:11:52 -08:00
Jyoti Kumari
384147888a qcacmn: Fix kernel doc format in edca_pifs_vparam structure
Fix kernel doc format in edca_pifs_vparam structure

Change-Id: Id947aa350be513506a023c511ff647335e88037e
CRs-Fixed: 3363574
2022-12-27 05:17:10 -08:00
Chetan Kumar Sanga
176650cce4 qcacmn: Add Bitmap support for Multi-Vdev-Restart
Update MVR handlers and init to setup/use MVR bitmap
depending on bitmap MVR support by FW.

Change-Id: I3a73ddefeae85d8f6b4fc31f9c1f1164fa5346c7
CRs-Fixed: 3355001
2022-12-26 22:50:00 -08:00
Vijay Raj
2413e83ebd qcacmn: Add event response for green ap low latency pwer save mode
Add low latency power save mode event response for xpan
profile.

Change-Id: If3271c8a0ed649cd04b9060060706de9ec5764c1
CRs-Fixed: 3267486
2022-12-26 03:24:24 -08:00
Vijay Raj
f0578f5bdb qcacmn: Add ucfg and wmi changes for green ap low latency ps mode
Add ucfg and wmi changes to support for green ap low latency
power mode enable/disable command.

Change-Id: Ib9112e384c8354f1eff0f15610301225d51ef3ac
CRs-Fixed: 3265649
2022-12-26 03:24:14 -08:00
Venkateswara Swamy Bandaru
a1abaf2a19 qcacmn: Add support for WMI_VDEV_PARAM_EXTRA_EHT_LTF setting
Add support for WMI_VDEV_PARAM_EXTRA_EHT_LTF vdev parameter
setting.

Change-Id: Ibc801b74e1247b011cf369b612cab790ff4f1ac2
CRs-Fixed: 3361368
2022-12-21 09:13:39 -08:00
Nidhi Jain
800dddec55 qcacmn: Registration function for link disablement
This change is to allow other modules to register for
link disablement.
It includes below functions:
1- Notify link update
2- Register to handler to get link update notification
3- Unregister T2LM handlers

Added the below changes as well,
- Move T2LM related data structures to wlan_mlo_t2lm.h file
- Host receives the expected duration from FW for multiple vdevs.
  Hence, add support to extract the expected duration for multiple vdevs.

Change-Id: Ie8e77d5d3b4351a8551ecd7da50786b58dad3b2e
CRs-Fixed: 3346432
2022-12-19 22:17:49 -08:00
Jeff Johnson
f138380bb7 qcacmn: Fix wmi_unified_param.h documentation
The kernel-doc script identified numerous documentation issues in
wmi_unified_param.h, so fix them.

Change-Id: I249e4f990a125ba45497c48edef373b926cc3d01
CRs-Fixed: 3351041
2022-12-17 21:25:52 -08:00
Jyoti Kumari
44b33e8326 qcacmn: Add WMI interface to configure EDCA/PIFS param
Add WMI interface(WMI_VDEV_SET_TWT_EDCA_PARAMS_CMDID) to
configure EDCA/PIFS param for LL SAP.

This configuration depends on edca_param_type.
If edca_param_type is 0 then host will configure EDCA param and
send it to firmware via WMI interface.
If edca_param_type is 0 then host will configure PIFS param and
send it to firmware via WMI interface.

Change-Id: I4f2e4120a258cc4a20aabeed503709aa2ceb8ec9
CRs-Fixed: 3349467
2022-12-12 11:49:38 -08:00
Shiva Krishna Pittala
11fa724d8a qcacmn: Add support to extract link removal TLVs from MGMT Rx event
To assist the Host in ML reconfiguration element construction for probe
responses, FW sends MLO link removal information as part of the MGMT Rx
event containing the corresponding probe request. This information is an
array of TLVs, one TLV for each link that is undergoing link removal from
the MLD for which this probe request is intended. The TLV carries the link
removal TBTT countdown value maintained by the FW for that link.
Add support to extract the same.

CRs-Fixed: 3335361
Change-Id: I16c6791a443ddb166da596d404a52ff2a38da291
2022-12-11 23:52:12 -08:00
Shiva Krishna Pittala
22be442546 qcacmn: Add supoprt to process WMI_MLO_LINK_REMOVAL_EVENTID
WMI_MLO_LINK_REMOVAL_EVENTID will be sent by FW to update the Host on the
progress of the link removal operation. Add support to process this event.

Change-Id: I0c4d5b047cf062b421380f85717fac5a9bdea9c2
CRs-Fixed: 3334950
2022-12-11 23:52:04 -08:00
Shiva Krishna Pittala
11dccd8fac qcacmn: Add support to extract wmi_mlo_link_removal_tbtt_update TLV
WMI_MLO_LINK_REMOVAL_EVENTID will be sent by FW to update the Host with the
progress of the link delete operation. Add support to extract the TBTT
update TLV sent in this event.

Change-Id: I01ce710d282f16e7a7cf4fb767279661558d129f
CRs-Fixed: 3322714
2022-12-11 23:51:54 -08:00
Shiva Krishna Pittala
b24b3a7e25 qcacmn: Add support to extract wmi_mlo_link_removal_evt_fixed_param TLV
WMI_MLO_LINK_REMOVAL_EVENTID will be sent by FW to update the Host with the
progress of the link delete operation. Add support to extract the fixed
params TLV sent in this event.

Change-Id: Ic42a822339363b1347ae174926a4dac19eef3f99
CRs-Fixed: 3318005
2022-12-11 23:51:45 -08:00
Shiva Krishna Pittala
c1231d0824 qcacmn: Add support to populate and send WMI_MLO_LINK_REMOVAL_CMDID
WMI_MLO_LINK_REMOVAL_CMDID is to be sent by the Host to initiate the
removal procedure for a given link from its MLD. This command will be sent
on the impacted link only. Add support to populate and send this command.

Change-Id: I8485d8c8897bb2bb891d50546d5fbfac2a69a4ce
CRs-Fixed: 3314430
2022-12-11 23:51:35 -08:00
Surya Prakash Sivaraj
68c9e15c31 qcacmn: Increase PMK max length to 64bytes
For SAE-EXT-KEY AKM with group-21 pwe, the PMK
length is 64bytes. Therefore, increase the max
size of the PMK to 64bytes in host to facilitate
PMK storage and PMK offloads.

Change-Id: I049cd14c1c71e1809b394199862409780a16371d
CRs-Fixed: 3353114
2022-12-09 09:36:15 -08:00
Surya Prakash Sivaraj
2be3e823e2 qcacmn: Add service bit for wpa3 sha384 roam
Add the service bit wmi_service_wpa3_sha384_roam_support
used by firmware to indicate the roaming support for
WPA3 SHA384.

Change-Id: I4bb4f9fd83085c48c646818124265486bae62c0c
CRs-Fixed: 3334343
2022-12-09 07:32:42 -08:00
Shashikala Prabhu
952dd4de06 qcacmn: Add API to parse the T2LM event ID
Add API to parse the TID-to-link mapping event ID for the AP vaps.
As part of this event,
	 - Update the mapping switch time TSF value in host data structures.
	 - When mapping switch time or expected duration expires in the FW,
	   update the host data structure.

Change-Id: I93232429fe5c2aa12dc4bf9f6a2f014761b7df15
CRs-Fixed: 3350697
2022-12-05 13:03:47 -08:00
Sai Pratyusha Magam
c87c0928b1 qcacmn: Add Keyix param for PN request to FW
Add Keyix param for PN request cmdid and event to FW
WMI_PEER_TX_PN_REQUEST_CMDID,
WMI_PEER_TX_PN_RESPONSE_EVENTID

Change-Id: I2803fdfaa20fae543cf0de34dd5c3f0966f2d605
CRs-Fixed: 3345914
2022-12-03 11:34:15 -08:00
Surya Prakash Raajen
6a2a1f1a5e qcacmn: Add vdev wmi cmd and event support t2lm ie info
Add support for vdev level WMI Command and event to send
and receive t2lm ie info

CRs-Fixed: 3339695
Change-Id: I8b896a961cba8f1d8e11111f900a98da090b9513
2022-11-27 12:31:47 -08:00
Divyajyothi Goparaju
7a737732fe qcacmn: Define set params for no host to target conversion
Currently if ENABLE_HOST_TO_TARGET_CONVERSION is defined,
host pdev/vdev set params can be translated to
target pdev/vdev set params through APIs
convert_host_pdev_param_tlv,convert_host_vdev_param_tlv.
If ENABLE_HOST_TO_TARGET_CONVERSION is not defined,
host pdev/vdev set params in
common code is sent to firmware directly, which is incorrect.

Define pdev/vdev set params in such away they represents
host params on ENABLE_HOST_TO_TARGET_CONVERSION enabled and
target params on ENABLE_HOST_TO_TARGET_CONVERSION disabled.

Change-Id: I5718c76c351b2d7904d8bf8b603073ffcb0a039d
CRs-Fixed: 3321556
2022-11-18 11:52:27 -08:00
Basamma Yakkanahalli
c1bece57dd qcacmn: Handle CU and BPCC for probe and assoc response
Add changes to indicate ongoing critical update CU flags and
BPCC values in probe and assoc/reassoc response.

For beacon FW update the CU flags and BPCC values in impacted
and partner links and keeps the latest copy of BPCC for ML VDEV.
The similar CU indication needs to be considered for probe,
assoc/reassoc response.

FW indicate to host the ongoing CU flag within DTIM interval for
impacted, and latest BPCC values of AP MLDs in impacted
and partner link VDEVs as part of mgmt_rx_event.
Extract cu_vdev_bitmap and bpcc values CU information from
wmi_prb_tmpl_ml_info TLV for probe and assoc / reassoc request.

Pass these values to umac, mgmt and ol layer as part of rx status.
Refer these values to update CU flag in capability information,
and BPCC values to update BSS Parameter Change Count in RNR,
MLIE and per sta profile.

CRs-Fixed: 3301916
Change-Id: I92ededb6598f85f3ea21b9d5e69d182c6180e30d
2022-11-18 00:31:48 -08:00
Will Huang
f8f0b97ffa qcacmn: Add APIs to configure target AFC flags
Add common code to configure target AFC flags:
enable_6ghz_sp_pwrmode_supp, afc_disable_timer_check,
afc_disable_request_id_check.

Remove cfg_get set is_afc_reg_noaction code, add it to psoc regulatory
private data.

Add APIs to set and get these AFC configures.

Change-Id: Idf74b245113eee18b071a7fbb92bb151cd535ce8
CRs-Fixed: 3154185
2022-11-17 15:35:45 -08:00
Basamma Yakkanahalli
23001226b9 qcacmn: Critical update signaling for 20TU Probe Response
Critical update is the explicit signaling for STA to notify
any change in BSS param.

Present support is there for beacon, host notify to FW by
updating current link CU param in wmi_bcn_tmpl_ml_info TLV
of BCN TMPL CMD by setting the corresponding cu_vdev_map
for category 1 / category 2 based on change in critical
update params of ML VDEV.

The same Critical update signaling is extended to 20TU
unsolicited broadcast probe response.
In 6 GHz link host notify the same category 1 / category 2
cu_vdev_map critical update params of ML VDEVs in 20TU
enabled group wmi_prb_tmpl_ml_info TLV of WMI_PRB_TMPL_CMD.

CRs-Fixed: 3314429
Change-Id: I84dbd1901c5a3f2ef28f981c581fd7350d147829
2022-11-14 11:11:46 -08:00
Shubham Pawar
1ac8aa1bd9 qcacmn: Add support to process direct DMA event in the configured context
In the current implementation, the Direct DMA completion event is getting
processed in the tasklet context. When the Direct DMA events land on the
same processor core as the one used by the WLAN data path events, the
Direct DMA events can pre-empt the data path events as the datapath
events usually run in NAPI context. This could impact the data path
throughput when there is a high volume of frequent Direct DMA events. To
fix this, Direct DMA events can be run in work queue context based on
user configuration. Add support for the same.

Change-Id: I1a89b185c6765addc7ee725e9324025f0318d9ed
CRs-Fixed: 3276157
2022-10-28 11:52:21 -07:00
Hariharan Basuthkar
9b699d0eb9 qcacmn: Add WMI_SERVICE_EIRP_PREFERRED_SUPPORT service bit
Add WMI support for WMI_SERVICE_EIRP_PREFERRED_SUPPORT service bit,
which indicates that the target prefers EIRP in the
WMI_VDEV_SET_TPC_POWER_CMD_ID.

Change-Id: I1433bd698e124336082e12f509f271c9dd7df40a
CRs-Fixed: 3307372
2022-10-22 19:48:49 -07:00
Rachit Kankane
58ccce90fb qcacmn: Send VDEV command to enabled SR prohibit
Send WMI_VDEV_PARAM_ENABLE_SR_PROHIBIT_CMDID to enable/disable
SR prohibit.

Change-Id: I4123af04ab2c4cf539a4ea7938d2a34e58a7ba45
CRs-Fixed: 3308068
2022-10-17 06:48:22 -07:00
Rachit Kankane
a9083f7afe qcacmn: Add macro for Spatial Reuse
Add below macro for SR:

1. HESIGA_Spatial_reuse_value15_allowed bit
2. NON-SRG PD disabled threshold
3. Minimum PD Threshold
4. Add service bit - wmi_service_obss_per_packet_sr_support

Change-Id: I9560518cadc5c6f916579af63ef44d41c748fd8d
CRs-Fixed: 3307369
2022-10-17 06:48:16 -07:00
Jeff Johnson
bf756f06de qcacmn: wmi: Fix misspellings
Fix misspellings in wmi/...

Change-Id: I7fe506919cf382e3c19feeee550ce41646c974df
CRs-Fixed: 3304705
2022-10-15 12:12:39 -07:00
Ashish Kumar Dhanotiya
a55da582be qcacmn: Update vendor1 requirement1 version for feature set
With change update vendor1 requirement1 version to the latest
version 3.3.

Change-Id: I56df41ca093d4d4dd3db5aa01c630fa61f976b8d
CRs-Fixed: 3309525
2022-10-14 13:43:05 -07:00
Shashikala Prabhu
8ba6f73786 qcacmn: Add support to send RX filter WMI command to firmware
On the initiator side, Host needs to send
WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_CMDID to firmware before sending the
PASN Auth frame. Hence, move send_set_mac_addr_rx_filter_cmd_tlv() from
wmi_unified_p2p_tlv.c to wmi_unified_tlv.c file.

Change-Id: Ia5517dbdd5ec46f611537b12b7046e3a9d859082
CRs-Fixed: 3304909
2022-10-12 08:18:52 -07:00
Ashish Kumar Dhanotiya
4432410b9c qcacmn: Add support to send band capability to fw
Currently host does not update band capability to fw as
part of feature set info.
With this change update band capability as well as part of
feature set info.

Change-Id: I09982f2f1b7b831a62f6f4db97691aeb4a4fb894
CRs-Fixed: 3303427
2022-10-06 15:15:45 -07:00
Ashish Kumar Dhanotiya
b8e6415c0b qcacmn: Parse tx and rx rate count from peer extd stats
Based on the new requirement, fw fills the tx rate count and
rx count per mcs index in the peer extd stats event.
Add logic to parse tx rate count and rx rate count from peer
extd stats event.

Change-Id: I13382366f52964b83eb26473fa03267ac7309bb9
CRs-Fixed: 3289779
2022-09-16 19:38:58 -07:00
Bing Sun
fbcb2bb588 qcacmn: Define WMI_HOST_PEER_* for no host to target conversion
Currently if ENABLE_HOST_TO_TARGET_CONVERSION is defined, WMI_HOST_PEER_*
can be translated to WMI_PEER_* through API
convert_host_peer_param_id_to_target_id_tlv.

If ENABLE_HOST_TO_TARGET_CONVERSION is not defined, WMI_HOST_PEER_* in
common code is sent to firmware directly, which is incorrect.

Define WMI_HOST_PEER_* to WMI_PEER_* if ENABLE_HOST_TO_TARGET_CONVERSION
is not defined. Then WMI_HOST_PEER_* can be used in common code.

Change-Id: I50aa604d8822a81eed223c8551e542007929424e
CRs-Fixed: 3271470
2022-09-16 16:31:31 -07:00
Liangwei Dong
5a993dd715 qcacmn: Send ROAM MLO Config to target
Add WMI API to send WMI ROAM MLO config to target.

Change-Id: I2f4671a887b2ed772d53292f718b5a759fe31028
CRs-Fixed: 3273021
2022-09-13 21:27:48 -07:00
Naveen S
d276b0eda6 qcacmn: Add feature flag for Health Monitor Feature
Adding feature flag for Health Monitor so that it can be disabled
for 16M and 256M profiles

CRs-Fixed: 3277434
Change-Id: Ibbbe582acd15ebff7e189fcbaa36429ea519db37
2022-09-09 04:08:54 -07:00
Jithender Miryala
354a68e77c qcacmn: Add host-FW handshake for 320 MHz bang radar support
FW-Host Handshake for BANG_RADAR_320_SUPPORT
1. FW advertises its capability of processing BANG_RADAR_320_SUPPORT
id via wmi service bit 'wmi_service_bang_radar_320_support'.
2. If the host is capable of processing the "BANG_RADAR_320_SUPPORT"
event id, host sends the capability in WMI_INIT_CMDID setting a bit in
host_service_flags

Change-Id: Ia26a7b8e8ee78aceb801d0053770379bd6d5a9cb
CRs-Fixed: 3270525
2022-09-04 23:13:54 -07:00
Venkateswara Swamy Bandaru
5b61207f4c qcacmn: Update peer_chan_width_switch_info
Update peer_chan_width_switch_info as per latest
fw common header file to include puncture parameter.

Change-Id: I1a68991ed8b9c653d31c4bc0c3ad3660d1104de3
CRs-Fixed: 3278709
2022-09-03 12:32:54 -07:00
Venkateswara Swamy Bandaru
8a0afca1e2 qcacmn: Add Support for setting puncture bitmap peer param
Add Support for setting puncture bitmap peer param

Change-Id: I819ef2b56fbc5d0240cbb1702fe5b2da2c4f5ec0
CRs-Fixed: 3278857
2022-09-03 06:21:52 -07:00
Gururaj Pandurangi
9fa8fc8b46 qcacmn: Add API to extract MSD caps from cmn info field
Add API to extract MLD AP MSD capabilities from MLO IE
common info field if present. This will be shared with FW
via peer assoc cmd.

Change-Id: I0ebcd5408a40f3314932d4a2a7e586c208af2ee5
CRs-Fixed: 3271118
2022-09-02 21:00:31 -07:00
Sheenam Monga
46644d2926 qcacmn: cleanup key_rsc_counter pointer from set key param
Remove unused param key_rsc_counter of set_key_param
structure, as key_rsc_ctr is used to send key rx sc
counter to fw and rename key_rsc_ctr to key_rsc_counter
as win is using key_rsc_counter.

Change-Id: Id58aabb30d772f8f620ac9f96890fcac0193777b
CRs-Fixed: 3256574
2022-08-29 10:00:47 -07:00
Jianmin Zhu
fa9ac21bbd qcacmn: Fix assert for deauth sent on inactive link
Set WMI_MLO_MGMT_TID for mlo link agnostic mgmt frames

Change-Id: I385c1e9b50bc9ef6fe5f8875e0408bb2afca8945
CRs-Fixed: 3269920
2022-08-23 21:02:56 -07:00
Divyajyothi Goparaju
3ec79c4856 qcacmn: Optimize vdev and pdev set param command frequency
Currently host sends many vdev or pdev set param commands
separately to firmware.

Combine all vdev or pdev set params together where ever
possible, send to WMI.Based on service capability
WMI_SERVICE_COMBINED_SET_PARAM_SUPPORT, host decides whether
to send all set params to firmware at once to reduce number of
transactions or need to follow legacy way i.e send params
separately one after the other.

Change-Id: I0a36dd66a7ccb27f2ecd437cf7b9d08667e27472
CRs-Fixed: 3151418
2022-08-23 15:17:07 -07:00