Commit Graph

706 Commits

Author SHA1 Message Date
Abhinav Kumar
39c5306a5b qcacmn: Save roam_trigger_reason and roam_ap_info params
Save BTM BSS termination timeout value and BTM MBO assoc
retry timeout value coming from FW through
wmi_roam_trigger_reason_tlv_param tlv.

Save Blacklist reason, Source of adding AP to BL, timestamp
which indicates the time when AP added to blacklist and
Original timeout value in milli seconds when AP added to BL
coming from FW through wmi_roam_ap_info_tlv_param.

Change-Id: I0a328814e77c7d2452672f43c855d2c1b8646b66
CRs-Fixed: 2744255
2020-08-05 11:19:04 -07:00
hqu
1160a1519d qcacmn: Move rso related process to connection manager [PART 2]
Move rso related process to connection manager.

Change-Id: I25fe80270374b6b2f4ebb40f6ba410cc3498fc82
CRs-Fixed: 2747577
2020-08-05 04:24:15 -07:00
Visweswara Tanuku
fbe384b6ac qcacmn: Add additional fields in wmi_twt_session_stats_info
Add below new fields in wmi_twt_session_stats_info required
for twt_session parameters and extract them.
protection flag, info_frame_disabled flag,
sp_tsf_us_lo & sp_tsf_us_hi

Change-Id: I3ca7fe44a1363c07d3a7db98086c66a1b7859eac
CRs-Fixed: 2730748
2020-08-05 02:17:14 -07:00
nwzhao
5ba7078b27 qcacmn: [WMI]FR47702 TWT stats, add WMI support for TWT Stats Event
Add WMI support for WMI_TWT_SESSION_STATS_EVENTID. This event
contains stats for a given TWT session.

Change-Id: Ieca2b6845fd2ec32ccdfb1021611bed07379d365
CRs-Fixed: 2609951
2020-08-05 02:17:10 -07:00
Visweswara Tanuku
19b1248241 qcacmn: Extract additional params from twt add dialog comp evt
Extract additional params obtained from fw as part of
WMI_TWT_ADD_DIALOG_COMPLETE_EVENTID during TWT setup

Change-Id: Ic58a1da463238a748cbf2678fe0156789ebb3559
CRs-Fixed: 2737036
2020-08-04 19:28:24 -07:00
Santosh Anbu
6315ce5dd1 qcacmn: Add dependency of blacklist manager macro at WMI layer
The blacklist manager macro is connection manager specific, whereas
the macros used at WMI is dependent on roam offload.
Hence mark of dependency of FEATURE_BLACKLIST_MGR on
WLAN_FEATURE_ROAM_OFFLOAD.

Change-Id: If48b701a450d34915d57780a274311aa2590c89a
CRs-Fixed: 2746160
2020-08-03 19:08:13 -07:00
Rajasekaran Kalidoss
2415379851 qcacmn: Add event id's for TWT complete events
Add TWT event ID's for add, delete, pause and
resume twt events.

CRs-Fixed: 2743159
Change-Id: If4a0972ab41b88bdcffeb93f60afda9ffb9f9108
2020-08-01 09:01:00 -07:00
Abhinav Kumar
e936132a21 qcacmn: Save info related to WTC BTM roaming
Save info related to WTC BTM roaming coming via
wmi_roam_trigger_reason_tlv_param.

Change-Id: Iec089ba48b2ff30c09838119144b2b0f0abf9e65
CRs-Fixed: 2740598
2020-07-31 12:02:38 -07:00
Kiran Venkatappa
857a439237 qcacmn: Move wmi print macros out of WMI_INTERFACE_EVENT_LOGGING
Macros like wmi_warn, wmi_alert, wmi_debug and others are not dependent
on WMI_INTERFACE_EVENT_LOGGING feaure. Move these outside to fix
compilation errors observed when this feature is disabled.

Change-Id: Ia585f4b947063828e2038d87b4736267d9aaad88
CRs-Fixed: 2742439
2020-07-29 11:38:46 -07:00
Shwetha G K
e18a6dab27 qcacmn: Add service_bitmap to support CFR capture_count & MO marking
Add wmi service_bitmap to support CFR capture_count & MO
marking.

Change-Id: I4e72dd089971dbbfc8391bb8d4eca1400bb94f77
2020-07-28 17:39:09 -07:00
Shwetha G K
4876ce33bf qcacmn: Add support for wmi_ext2 service bitmap
Add support for wmi_ext2 service bitmap

Change-Id: I2c147b91e11c2487027a7af88ff1752c7b48730b
2020-07-28 17:39:06 -07:00
Rhythm Patwa
4f9a9d0938 qcacmn: Add tx_flag to Host WMI mgmt frame structure for incorrect key support
Add 'tx_flag' param to wmi_mgmt_params structure for configuration
to use incorrect key for encryption of mgmt frame.

The 'tx_flag' param is primarily added to provide additional
test configuration options for mgmt frames.
Currently it only has support to encode the mgmt frame with
incorrect key for PMF protected connection.

Change-Id: Id894c735c4c612a75506a33938372c3fa2e7f24a
CRs-fixed: 2690147
2020-07-24 15:18:15 -07:00
Gururaj Pandurangi
b1f6686944 qcacmn: Enable three new 5.9 ghz channels for US
Add new channel bonding pairs as well as frequency
pairs for 40, 80 and 160 MHz with the support of
three new 5.9 GHz channels 169, 173 and 177.
Add new API reg_modify_chan_list_for_5dot9_ghz_channels
to enable/disable these new channels based on
INI value and service bit.

Change-Id: I8598e705ba4047e96e7167661ba70d4236cde251
CRs-Fixed: 2696211
2020-07-23 17:24:06 -07:00
Rathees kumar Chinannan
199049f281 qcacmn: Add new param on peer assoc command
Add new param on peer assoc command to pass sta
type for bsscolor.

Change-Id: I83f78c07f9079b23629c2f7f42d67ae9630c2d6c
CRs-fixed: 2727001
2020-07-22 03:21:40 -07:00
Abhinav Kumar
93ea2cf59b qcacmn: Process Disconnect request from FW
FW sends a disconnect request to HOST while roaming failure
through event WMI_VDEV_DISCONNECT_EVENTID per vdev id.
Process WMI_VDEV_DISCONNECT_EVENTID and issue disconnection.

Change-Id: I0d3d2ddf0cab65eecbfc7676e9b21f2cc19971e2
CRs-Fixed: 2731954
2020-07-17 21:25:51 -07:00
Shiva Krishna Pittala
b6a6d5e2c4 qcacmn: Add Host abstraction for WMI pdev param SR_TRIGGER_MARGIN
Pdev parameter WMI_PDEV_PARAM_SR_TRIGGER_MARGIN is added to configure
the safety margin which will be used in calculating the acceptable
interference level for PSR based Spatial Reuse operation.
Add the host abstraction for the same parameter.

CRs-Fixed: 2729664
Change-Id: Iae542d4f7de23520ee00719e721d81e32737a191
2020-07-17 17:23:27 -07:00
Shashikala Prabhu
065e48fb63 qcacmn: Add wrapper function to get host pdev_id from tgt_pdev_id
Add wrapper function to get host pdev id from target pdev id.

Change-Id: I4628955569d741765efc515949909d9ea358e54a
CRs-Fixed: 2711423
2020-07-17 01:51:30 -07:00
Abhinav Kumar
55d706efcd qcacmn: Add service bit for CONFIGURE_ROAM_TRIGGER_PARAM_SUPPORT
Add new service bit for
WMI_SERVICE_CONFIGURE_ROAM_TRIGGER_PARAM_SUPPORT.

Change-Id: I3f2683c5284cdc615270fd653e6173649c543c04
CRs-Fixed: 2733024
2020-07-16 20:05:37 -07:00
hqu
ee897412af qcacmn: Move rso related process to connection manager [PART 1]
Based on new macro ROAM_OFFLOAD_V1, define
send_roam_scan_offload_rssi_thresh_cmd to different
function pointer type.

Change-Id: I965b8c0a2a2660b9560d48a92ad693a7efb7aaff
CRs-Fixed: 2730850
2020-07-16 20:05:31 -07:00
Abhinav Kumar
a5c1fed773 qcacmn: Extract btm response and initial roam stats
Extract btm response and initial roaming stats coming
from FW through WMI_ROAM_STATS_EVENTID event as
wmi_roam_btm_response_info_tlv_param and
wmi_roam_initial_info_tlv_param respectively.

Change-Id: I680260276530368aab0e783bf4ef83edb0fe0d62
CRs-Fixed: 2728465
2020-07-16 20:05:28 -07:00
Srinivas Dasari
4e5cfb2ac9 qcacmn: Add vdev param to configure NAN feature bitmap to firmware
Define a new vdev param to set corresponding bit to enable/disable
a particular NAN feature.
Currently, Framework configures NAN DW as 4 seconds when the
device is in sync role and the screen is off. But customers might
want this to be 512ms always irrespective of screen off/on.
Send the vdev param on NAN vdev by setting the "bit 0" to 0 to
indicate firmware to ignore framework configured DW value and
consider the firmware default value.

Change-Id: Idcbdae94bd6a96fbbe15ec103a0aa558cdfcd572
CRs-Fixed: 2721980
2020-07-08 18:55:57 -07:00
aloksing
093d940112 qcacmn: Add wmi support wifistats
Send WMI command to FW with provided tlv from wifistats

Change-Id: I80ac9f621c75429bdca18962423026c2008a71d0
2020-07-08 08:59:19 -07:00
Surabhi Vishnoi
20e9e49e70 qcacmn: Add support for WMI_VDEV_BCN_LATENCY event
Add interface changes for WMI_VDEV_BCN_LATENCY_EVENTID which
is sent by firmware to indicate the latency IE received from
connected AP in beacon.

Change-Id: Ia6cec01be89f13885b011414f0d77f64c6eb05ee
CRs-Fixed: 2723226
2020-07-06 11:23:14 -07:00
Abhishek Singh
e2097ddb09 qcacmn: Replace different struct of SISD with struct wlan_ssid
There are different version of SSID structure used in driver, replace
them with struct wlan_ssid.

Also move struct element_info from scan module to generic structures.

Change-Id: Ia32f82d943980c23b4ff478f5a06c5c053036de5
CRs-Fixed: 2721872
2020-07-01 00:26:20 -07:00
Pragaspathi Thilagaraj
acc60e6ede qcacmn: Add support to send WMI_VDEV_SET_PCL_CMDID command
For STA + STA roaming, instead of WMI_PDEV_SET_PCL_CMDID, the
WMI_VDEV_SET_PCL_CMDID needs to be sent.
Declare the corresponding send_vdev_set_pcl_cmd wmi tlv ops for
sending the WMI_VDEV_SET_PCL_CMDID command.
Also add changes to read the peer create confirmation and dual
sta roam feature support firmware capability.

Change-Id: I21456cb2e4c0b2bb66bf341539d2070677c49d16
CRs-Fixed: 2702849
2020-06-27 06:18:25 -07:00
Rachit Kankane
e85e67ce9b qcacmn: Add no interband mcc service bit
Add WMI service bit for targets which doesn't
support interband MCC.

Change-Id: Ia7c93ed0b53dfb539457167722bc3b04fb27032b
CRs-Fixed: 2715598
2020-06-26 05:37:40 -07:00
Abhishek Ambure
d5aa3cc44f qcacmn: Add support for roam capability report event
Firmware sends WMI_ROAM_CAPABILITY_REPORT_EVENTID event asynchronously
to host during FW init. It indicates FW roam related capabilities to host.
scoring_capability_bitmap in the event indicates firmware candidate scoring
capabilities. Host uses scoring_capability_bitmap to calculate roam score.

Change-Id: Idd2cad257e5d783166bd8cc0418dd4f394989295
CRs-Fixed: 2716781
2020-06-25 16:46:57 -07:00
Pragaspathi Thilagaraj
f49eeb2735 qcacmn: Remove roam related wmi files from cmn
Move the roam related wmi files to qcacld-3.0 folder.

Change-Id: I4146646cbb73c38e03de490f8dee66439ae85a68
CRs-Fixed: 2714613
2020-06-25 03:49:58 -07:00
Jayachandran Sreekumaran
cb709cad18 qcacmn: iot_sim code cleanup in wmi
Refactor code and put iot_sim code under feature flag.

Change-Id: Id4720d63ae174d9f4490285e6eb69ab2972ccd28
CRs-Fixed: 2707122
2020-06-24 03:34:54 -07:00
Subrat Dash
94bf91fc2b qcacmn: Add support to send pdev id in the oem data wmi cmd
The FW API is updated for pdev_id in the fixed param.
The pdev_vdev_flag is used to indicate whether the command
is meant for pdev or vdev.

The pdev_vdev_flag should be set to 1 for pdev command and 0 for
vdev command.

CRs-Fixed: 2693893
Change-Id: I99aabb9b73fd44d746342dfc1741fc6585c0863c
2020-06-16 06:15:54 -07:00
Abhishek Ambure
374d2eee38 qcacmn: Add support to send max ndi host supports to fw
Host configures max ndi interfaces support to firmware using
WMI_INIT_CMD. In resource config of WMI_INIT_CMD, host updates
max number of ndi interfaces support and sends it to firmware.

Change-Id: I44ccbe726663bc18d3c69b4aae0b0e3e9c1501ee
CRs-Fixed: 2701559
2020-06-10 07:26:09 -07:00
Abhishek Ambure
afdf76270f qcacmn: Add support to send ESS RSSI roam trigger to fw
Firmware uses the ESS report element information from beacon. For
roaming, station uses ESS report information to consider next AP.

Hence add support to send ESS RSSI roam trigger reason to firmware.

Change-Id: Id10cd3030d4dffde0bbcc883d582c5ca7e0f1005
CRs-Fixed: 2688520
2020-06-08 21:09:44 -07:00
Shashikala Prabhu
a76f88adb8 qcacmn: Add support to populate target 11AX wireless modes
Add support to populate 11AX wireless modes advetised in ext2 service
ready message. To support older FW that do not advertise this, use
existing host workaround to populate these in host  itself.

Change-Id: I3b3b280672592c858bd3f6f0e368909a16bd30ee
CRs-Fixed: 2650136
2020-06-08 18:37:03 -07:00
Abhishek Ambure
23dab4b3a5 qcacmn: Add support to send max ndp sessions to fw
Firmware advertises max number of ndp sessions support in
wmi_service_ready_ext2 event. If the firmware advertised value of
max ndp sessions is non-zero, then host uses a minimum of max ndp
sessions of target_resource_config and firmware advertised max ndp
sessions to configure max ndp sessions in firmware using WMI_INIT_CMD.

Change-Id: Ied6891157ce589e5d36a4f8b9694a95b5c819ad6
CRs-Fixed: 2688393
2020-06-08 16:01:08 -07:00
Abhishek Ambure
101c1fdeda qcacmn: Send oce_subnet_id_weightage_pcnt to firmware
In struct weight_config, "oce_subnet_id_weightage" added newly.
Station uses "oce_subnet_id_weightage" as one of the parameter for
selecting AP candidate during initial connection. Host sends
"oce_subnet_id_weightage" ini value to firmware over WMI command
WMI_ROAM_AP_PROFILE.

Add oce_subnet_id_weightage in scan object scoring param to calculate
weightage based on SUBNET ID and select candidate accordingly.

Change-Id: I6583f46f661eaefabbad858bc7fb34e37443ebae
CRs-Fixed: 2675924
2020-06-01 01:37:41 -07:00
Aditya Sathish
a88235db0e qcacmn: Add support for FW cap for chan_width_switch_cmd
WMI_PEER_CHAN_WIDTH_SWITCH_CMDID sent from host fragments the
command based on the size of the WMI buffer.

Add support to instead use a FW regulated value taken from the
WMI service ready extended_2 event.

CRs-Fixed: 2684788
Change-Id: Iaeccf785c64b385bf2ad6bc372da239981143fa0
2020-05-21 23:52:25 -07:00
Srikanth Marepalli
8a8ee00543 qcacmn: Add support for WPA3 SuiteB roaming
This commit enables support for SuiteB roaming wmi service based
on the WPA3 SuiteB roam service capability advertisement
received from Firmware.
In SuiteB the PMK length is greater than the existing PMK length,
added the extended PMK parameters to fill in the remaining bytes
of PMK in the RSO command.

Change-Id: Ia630580bba050513800e3acac875baf937ec8d14
CRs-Fixed: 2685993
2020-05-19 08:41:11 -07:00
Shiva Krishna Pittala
fecd279894 qcacmn: Add WMI support for Spatial Reuse commands and service ready bit
In order to enable/disable the OBSSes whose transmission can be treated as
SR opportunity for SRG and Non-SRG based Spatial Reuse, add the required
WMI support. Also, add the Host abstractions for the following
        - WMI_VDEV_PARAM_ENABLE_SRP
        - WMI_SERVICE_SRG_SRP_SPATIAL_REUSE_SUPPORT

CRs-Fixed: 2684157
Change-Id: Ib3e919766436ca4d4e7f9242b642ba309dbf9a47
2020-05-15 20:14:55 -07:00
Neha Bisht
4bda764146 qcacmn: remove dependency of public files from wlan_objmgr_psoc_obj.h
Remove dependency of wlan_lmac_if_def headerfiles from
wlan_objmgr_psoc_obj.h

Change-Id: Ibe2f22c4b4f22b15eef201d1a42844ccf2931fef
2020-05-15 10:41:50 -07:00
Abhinav Kumar
395336f2f9 qcacmn: Add iface changes to enable/disable FT-IM in FW
With specific AP(s), FW needs to perform FT initial mobility
association instead of FT roaming for deauth roam trigger.

Add iface changes to configure "FT initial mobility roaming
for deauth roam trigger" behavior from the HOST.

Change-Id: I695a36b66a7a53e8d08526c065a9530196646184
CRs-fixed: 2665885
2020-05-15 06:56:19 -07:00
Surabhi Vishnoi
a994b57d2b qcacmn: Add support to provide higher range mem chunks in wmi init command
With the current implementation of wmi init command,
there is no provision for the host driver to provide mem
chunks addresses with more than 32-bit, to the firmware.
WCN3990 is a 35-bit target and can accept mem chunks addresses
which are above 32-bit.
If firmware supports address range more than 32 bit, it
advertises the support by setting the WMI_SERVICE_EXTEND_ADDRESS
service. Based on this service fill the upper bits of paddr while
providing the mem chunks in the wmi init command.

Change-Id: Id65eb03d8f5cec5b9f16e24287a45a86433ab970
CRs-Fixed: 2678069
2020-05-13 06:46:06 -07:00
Edayilliam Jayadev
abdb33bb00 qcacmn: Add start scan response WMI event
Add support for processing the start scan response
WMI event. FW provides the necessary information to
segregate FFT bins to pri80, 5 MHz and sec80 in
160/165 MHz. Also, cfreq2 and the channel width is
provided to FW via WMI command.

CRs-Fixed: 2672081
Change-Id: I666b6c18a63d5d01117aa9cbd611691c6f8b2793
2020-05-13 01:30:40 -07:00
Jayachandran Sreekumaran
77c068dda2 qcacmn: IOT SIM target interface
IOT SIM target interface updates

Change-Id: Ia9b048ecccd476df822e61f4ccb16e70352f630d
CRs-Fixed: 2665426
2020-05-12 06:43:14 -07:00
Gyanranjan Hazarika
edab7cf824 qcacmn: Define WMI_BEACON_TX_BUFFER_SIZE distinctly for WIN AP
The current value of WMI_BEACON_TX_BUFFER_SIZE imposes a limita-
tion on the size of the probe-response template that host can
send to target. This limit is good for offloading probe response
to target in case of soft-ap

WIN AP requires to support up to 16 VAPs in a single WIFI radio.
Also, 20TU probe response requirement for 6Ghz AP now requires
WIN AP to offload probe response

The current limit of 500 bytes is sufficient for soft-ap but does
not fulfill 16 6Ghz WIN AP requirement

Define WMI_BEACON_TX_BUFFER_SIZE for WIN AP as 1500 bytes

CRs-fixed: 2681235
Change-Id: I6251ee049451aa0c4a0482d772842a4f688b2f89
2020-05-08 07:33:47 -07:00
Shiva Krishna Pittala
2d6af44647 qcacmn: Add WMI support to configure SRG BSS color and BSSID bitmaps
To be able to configure SRG BSS Color Bitmap and SRG Partial BSSID Bitmaps,
add the required WMI support.

CRs-Fixed: 2665817
Change-Id: I141abe24dd34cab92f45b230b385500902d01416
2020-05-07 01:55:20 -07:00
Gyanranjan Hazarika
bf7b89c52b qcacmn: Add WMI changes for EMA AP
Enhanced Multi-BSSID Advertisement is an enhancement to the
existing Multi-BSSID feature in terms of advertising
non-transmitted bssid profile using the transmitted bssid
beacon. Mandatory inclusion of RNR IE in lower-band AP
beacon to support Out-of-Band Advertisement of colocated
6Ghz AP may impose limitation in the beacon size. EMA AP
provides a standardized way of overcoming such a limitation

Relevant WMI changes are:
1. Support of EMA AP service bit in wmi_service_ready_ext
2. Support of 32-bit ema_params in wmi_bcn_tmpl_cmd_fixed_param
to signal ema_beacon_profile_periodicity, ema_beacon_tmpl_idx,
ema_first_tmpl and ema_last_tmpl to firmware while sending the
beacon template
3. Support of 32-bit WMI resource-config params in INIT cmd
to signal number of max transmitting BSSs and max profile
periodicity

CRs-fixed: 2677701
Change-Id: I6c7b146b5071ad0a1c45fc3ec6fd03ed5dbe8020
2020-05-06 03:10:14 -07:00
Edayilliam Jayadev
1de47959b6 qcacmn: Enable Agile Spectral in single synth targets
Some targets have a single synthesizer and it allows
a single Spectral detector to scan in 160 MHz /165 MHz.
Enable Agile Spectral scanning in 160 MHz / 165 MHz for
such targets. Agile creq2 will be populated in the WMI
command after WMI interface changes are merged.

CRs-Fixed: 2648480
Change-Id: I8522cbeeab29ac41479e3041eea376b081c0758a
2020-04-30 01:51:14 -07:00
Ramanathan Choodamani
40ef96ef99 qcacmn: Add support for PHY logging for pktlog
The user can add phy logging to be enabled in user space
by using '-ephy' option, which will let the host know about
this corresponding event and will send the event information
to the firmware.

Change-Id: Ibb4888101a80a765d196264403ce7912d1a6e9aa
2020-04-29 19:36:18 -07:00
Shiva Krishna Pittala
5baa725203 qcacmn: Host abstractions for Spatial reuse WMI pdev and vdev params
Add the Host abstractions for the following WMI pdev and vdev parameters
related to Spatial reuse operation.
   - WMI_PDEV_PARAM_ENABLE_SRP
   - WMI_PDEV_PARAM_ENABLE_SR_PROHIBIT
   - WMI_VDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD
   - WMI_VDEV_PARAM_SET_CMD_OBSS_PD_PER_AC

CRs-Fixed: 2672093
Change-Id: Id9b03e304676e2896b1d40b0c6319a69be32d7fd
2020-04-28 07:32:34 -07:00
Sumedh Baikady
84bcbc29b5 qcacmn: Add WMI support for Tbtt sync in Multi Soc
Support synchronization of Tbtt in multi SoC case.
Add WMI to send vdev details of one soc to another.
Info includes beacon interval, bssid and tbtt calculated
in host wrt to other Soc.

Change-Id: I465140268b0fe5e0cb69f636ebeb08dc80667cf7
2020-04-28 07:32:27 -07:00