Grafik Komit

135 Melakukan

Penulis SHA1 Pesan Tanggal
Abhishek Singh
046eb026ea qcacld-3.0: Code cleanup for connection manager in LIM/WMA
Remove unused code related to ndef FEATURE_CM_ENABLE in LIM/WMA.

Change-Id: I1697f0a6c9102e3b70ce6f7a1c78ea895d4d160b
CRs-Fixed: 2977902
2021-06-28 12:24:29 -07:00
Surabhi Vishnoi
9686432f2c qcacld-3.0: Add function to fill rssi received from target in vdev_priv
Add function to populate the rx average rssi received from target in
pkt_capture vdev_priv structure. The rx average rssi is received in
wmi smart monitor event.

Change-Id: I9206669b418a2245bb8d53920040fddea77ce06c
CRs-Fixed: 2969242
2021-06-25 14:15:01 -07:00
Surabhi Vishnoi
1954f6e25e qcacld-3.0: Register handler for wmi smart monitor event
Register handler for wmi smart monitor event in packet capture
mode in lithium. Currently, wmi smart monitor event provides
average rssi of last ten received data packets.

Change-Id: Ieeea5cbef328b04f139f54e7a42d52a3cf25824b
CRs-Fixed: 2969245
2021-06-25 09:40:17 -07:00
Huashan Qu
f75e881d71 qcacld-3.0: Return success when firmware doesn't support 11k offload
Return success when firmware doesn't support 11k offload, or else
subsequent roaming related wmi commands have no chance to issue.

Change-Id: I69d55cca63f2b7ab4787295a2825159395cf2a11
CRs-Fixed: 2976163
2021-06-24 11:41:18 -07:00
Vulupala Shashank Reddy
01b4e695dd qcacld-3.0: Pkt capture config for qos null and trigger frames
Provide ucfg api to configure qos null and trigger frames.

Ucfg api will send configuration to FW. Below configuration values
are allowed.

PACKET_CAPTURE_CONFIG_TRIGGER_QOS_DISABLE: disable capture for
trigger and qos frames.
PACKET_CAPTURE_CONFIG_TRIGGER_ENABLE: enable capture for trigger
frames only.
PACKET_CAPTURE_CONFIG_QOS_ENABLE: enable capture for qos frames only.
PACKET_CAPTURE_CONFIG_TRIGGER_QOS_ENABLE: enable capture for both
trigger and qos frames.

The packet capture config old value will be over written by new value.
For example, first if we configure value as
PACKET_CAPTURE_CONFIG_TRIGGER_ENABLE and then if we send config as
PACKET_CAPTURE_CONFIG_QOS_ENABLE then config is enabled only for qos.

Change-Id: I02dcd4372c7194ec3e477694ad0e2c045fe6c942
CRs-Fixed: 2967824
2021-06-22 23:04:21 -07:00
Srinivas Dasari
10e2a002a8 qcacld-3.0: Move NAN log events to RX_WORK context
Firmware sends NAN log events to driver and these are logged
with info level to capture complete NAN state machine logs in kmsg.
Currently, these events are received/processed in soft IRQ context
and causes performance issues as logs introduce delays. Move the
event registration to RX_WORK context to avoid delays.

Change-Id: I15ba20059f55f002cfe276d62e68e3cc09136a23
CRs-Fixed: 2960359
2021-06-09 19:43:09 -07:00
Srikanth Marepalli
e4323e039d qcacld-3.0: Enhance the EAPOL handshake offload INI per AKM
Existing INI disable_4way_hs_offload is defined as a boolean
that controls the EAPOL Handshake to be offloaded to Firmware or
Not. There is no way to specify the EAPOL offload per AKM.

Hence extended the support of EAPOL handshake offload to firmware
per AKM by converting this INI to a bitmap integer.
With ini value as 0 by default Firmware takes care of 4-way HS
during roam for all AKMs except for SAE and OWE. If
this ini value is 1 then Host takes care of EAPOL for all AKMs.

Having the backward compatibility, added a new value to ini.
If this ini value is set to 2 and also if the SAE EAPOL offload
service bit is set by Firmware then the behavior is same as ini
with 0 except that Firmware takes care of 4-way HS for SAE roam
as well. And for OWE it is still handled by supplicant.

To achieve this, new roam offload flag is introduced to indicate
Firmware about SAE roam EAPOL offload, So that in Roam sync
indication Firmware will inform the status as connected but not
authenticated so that supplicant can take care of 4-way EAPOL HS.

Change-Id: I8b65a1768fad91fac7e427712d3ccf4586176f5f
CRs-Fixed: 2955029
2021-06-07 22:54:32 -07:00
Srinivas Dasari
a51f024cd9 qcacld-3.0: Move cp stats to scheduler thread from kworker thread
Currently, cp stats are received through kworker thread context.
This causes race conditions/out of sync issues if any common data
structures are handled in parallel in scheduler thread context.
There is no need to receive the cp stats on kworker thread as per
current design. So, move the cp stats event handling to scheduler
thread to avoid any race conditions.

Change-Id: Id8134003e6f7a3e0368b20c496f650e0b7025b9e
CRs-Fixed: 2928876
2021-05-31 05:36:02 -07:00
Paul Zhang
84c234f62f qcacld-3.0: Support congestion report on multiple interfaces
Support congestion report on multiple interfaces

Change-Id: Iff650519c5b0e48ad63bb0a05d1c736ec40b385d
CRs-Fixed: 2832477
2021-04-14 05:34:12 -07:00
sheenam monga
6e6c139e05 qcacld-3.0: Add support to offload igmp feature to fw
offload igmp feature to fw in case of suspended state
to avoid high power consumption.

Change-Id: I05fbf23dc2836f8f5dc6e2f45b35bf2d30c39790
CRs-Fixed: 2907644
2021-04-05 15:22:23 -07:00
Amruta Kulkarni
15ac4a4e5a qcacld-3.0: Support roam sync indication in CM
Add change to support roam synch indication
in connection manager.

Change-Id: I06b23ae085a5a86caf4fe04fe5929b86d8d5c543
CRs-Fixed: 2901858
2021-03-24 09:47:46 -07:00
Jyoti Kumari
6308349a61 qcacld-3.0: Check NULL value of wmi_handle
In target_if_register_mgmt_data_offload_event(), check NULL value of
wmi_handle before it's used by wmi_service_enabled()

Change-Id: Iea51c59770258fd10468bb439f559094b563851f
CRs-Fixed: 2900533
2021-03-22 04:54:49 -07:00
Abdul Muqtadeer Ahmed
70ee3f70fd qcacld-3.0: Add new WMI wakeup reason
Add the new WMI wakeup reason “WOW_REASON_FATAL_EVENT_WAKE".

Change-Id: I93b530f78f568fa88cb310c5d78cd950451fc441
CRs-Fixed: 2868523
2021-03-17 18:33:16 -07:00
Abdul Muqtadeer Ahmed
e751855624 qcacld-3.0: Add a new feature to support forced dtim
Add vendor command interface/feature through which the user
or vendor can set the dtim count as per their requirement.

Change-Id: I26010948c4ed7e3c49bfe0453119235d4f438c6f
CRs-Fixed: 2894349
2021-03-11 11:58:42 -08:00
sheenam monga
72c7917fa9 qcacld-3.0: Add support for big data stats
Add support of big data stats in the cpstats
component.

Change-Id: I3642035d9f25237c80b529da78c51bb1ccf0035a
CRs-Fixed: 2868949
2021-03-11 09:48:12 -08:00
Amruta Kulkarni
999081053f qcacld-3.0: Add new files for CM roaming
New files added for handling FW based roaming
in connection manager.

Change-Id: Ibb5b74475699719cb901bf067f5d498ad16e0a60
CRs-Fixed: 2864490
2021-03-02 14:22:26 -08:00
gaurank kathpalia
758f6c8bc3 qcacld-3.0: Refactor the roaming code
Refactor the roaming code by moving to component.

Change-Id: I566967482ec3eb0d15d3ff357855b58b9579d3cf
CRs-Fixed: 2887126
2021-02-26 11:50:20 -08:00
Amruta Kulkarni
e4df806aa6 qcacld-3.0: Support roam invoke request in connection manager
Add change to support roam invoke request in connection manager

Change-Id: I87bd39263c7c210fa87250aca59ef5f2f89d4c67
CRs-Fixed: 2869211
2021-02-18 03:12:04 -08:00
Dundi Raviteja
3b0a146c82 qcacld-3.0: Reduce stack frame size while extracting pdev stats
Reduce stack frame size of target_if_cp_stats_extract_pdev_stats()
by allocating dynamic memory to wmi_host_pdev_stats.

Change-Id: I83a73f2973b54fbc28399c106ea52a0b6c1988f3
CRs-Fixed: 2868500
2021-02-06 12:46:55 -08:00
Dundi Raviteja
38f98292e3 qcacld-3.0: Reduce stack frame size while extracting vdev stats
Reduce stack frame size of
target_if_cp_stats_extract_vdev_summary_stats()
by allocating dynamic memory to wmi_host_vdev_stats.

Change-Id: I3922f2b61bcde5d5aa90e71f55a884075742147b
CRs-Fixed: 2868487
2021-02-06 10:42:46 -08:00
Dundi Raviteja
f814c5b5f5 qcacld-3.0: Reduce stack frame size while handling mc_cp_stats
Reduce stack frame size of target_if_mc_cp_stats_stats_event_handler()
by allocating dynamic memory to struct stats_event.

Change-Id: Ieaf99efece75080fe7ff6cf2cf70858ca5f8740f
CRs-Fixed: 2868456
2021-02-06 10:42:41 -08:00
Dundi Raviteja
eb2dc5ceca qcacld-3.0: Reduce stack frame size while clearing mc filter
Reduce stack frame size of target_if_pmo_clear_multiple_mc_filter_req()
by allocating dynamic memory to struct pmo_mcast_filter_params.

Change-Id: I0078ef0c84b33de209551dccd91aff70699eca80
CRs-Fixed: 2864938
2021-02-01 09:59:20 -08:00
Dundi Raviteja
537baf822a qcacld-3.0: Reduce stack frame size while setting multiple mc filter
Reduce stack frame size of target_if_pmo_set_multiple_mc_filter_req()
by allocating dynamic memory to struct pmo_mcast_filter_params.

Change-Id: Ib1ffb61aae30eda42340856a04cbbbf5a8162935
CRs-Fixed: 2864893
2021-02-01 09:59:12 -08:00
gaurank kathpalia
4abae1f448 qcacld-3.0: Move code from CSR to new RSO structs
Move code from CSR to roam scan offload to use new converged
structures.

Change-Id: Iaef2e4b08853f559a2da2c26b774ea29ecde04aa
CRs-Fixed: 2857072
2021-01-18 21:45:16 -08:00
Rajasekaran Kalidoss
05b4328025 qcacld-3.0: Register cp stats legacy ops
Support has been added in common code to register both
common tx ops and MC/WIN specific tx ops. Add support to
register and tx ops for MC specific stats.

Change-Id: I4e5263e4685a707008ec3c5e96f50c707b071fe9
CRs-Fixed: 2851256
2021-01-13 10:17:12 -08:00
Saket Jha
6599516554 qcacld-3.0: Request fw stats for monitor mode
Periodically request pdev stats from FW to receive channel noise floor
information after monitor vdev has been brought up, based on the band
currently being sniffed. Use the band information as a secondary parameter
when sending periodic request to fw so a single noise floor value is sent
to host. Pass this noise floor information to dp_pdev to be populated in
radiotap header.

Change-Id: I488e4985392cb646ffdee914359fa995dbeb025e
CRs-Fixed: 2833458
2020-12-17 19:38:27 -08:00
Bapiraju Alla
19f4eb9bb6 qcacld-3.0: Request stats over qmi only when target suspend is success
Currently, Stats request commands are sent over qmi right from the
target suspend request is sent to FW. This is leading to a crash in
FW since it is trying to access PCI when it is in suspend state.

To address this, send stats request over QMI only after the ack is
received for the target suspend command.

Change-Id: I1b2b6a60c5d8c7ec4375d328e58a66d749794e3f
CRs-Fixed: 2835903
2020-12-17 13:39:50 -08:00
Liangwei Dong
349b0b002c qcacld-3.0: Use serialize context for thermal event
Use WMI_RX_SERIALIZER_CTX context for thermal event handler.
The default context is tasklet, it may cause issue when interact
with OS interface.

Change-Id: I349412c2afee9a081f0d38704541f77b5e4569f4
CRs-Fixed: 2824461
2020-11-24 10:55:20 -08:00
Amruta Kulkarni
65fe69ff37 qcacld-3.0: Add support for STA + monitor mode
In mission mode, add support for virtual add/del monitor
mode interface. In addition to STA vdev, create and maintain
a new vdev for monitor interface.

Change-Id: I91ea8e56976cce92f9b1ae308d4bd0fb30815366
CRs-Fixed: 2818499
2020-11-19 22:45:53 -08:00
Yu Wang
6088e94490 qcacld-3.0: move component 'coex' to qcacld project
'coex' component is MCC specific, move to qcacld project.

CRs-Fixed: 2721758
Change-Id: Ic1769ddf7eab6a6acc96349c020a6f311cda6bff
2020-11-18 14:19:13 -08:00
Abdul Muqtadeer Ahmed
1eb57fce21 qcacld-3.0: Add new WMI wakeup reason
Add the new WMI wakeup reason “WOW_REASON_LOCAL_DATA_UC_DROP".

Change-Id: Ibae5d98de8e63b03930837de8ce3062fef319718
CRs-Fixed: 2798184
2020-11-09 03:03:09 -08:00
hqu
ad188263dd qcacld-3.0: Remove old rso path code [PART 5]
Since new rso ROAM_OFFLOAD_V1 path is enabled, remove
the old rso path code for cm/wmi roam related files.

Change-Id: Iec350f032c3e037204f560199d4a6e258ac02688
CRs-Fixed: 2810145
2020-11-03 00:55:29 -08:00
Jianmin Zhu
0837cb4583 qcacld-3.0: Fix roaming between different PMF option APs failure
Roaming between different PMF option APs has following issues:

1. Roaming between Optional -> Disabled -> Optional
When STA roam to optional, PMF is set to False from STA in reassoc
request and all management pkt not secured.

2. Roaming between Required -> Disabled -> Required
STA not able to find candidate AP when tried to roam to AP with PMF
Required.

Root cause: When LFR3 roam happens,  vdev_crypto_params will be reset
including rsn_caps 11w PMF, if new AP hasn't enabled PMF, vdev rsn_caps
11w PMF is disabled too, and  passed to F/W. Then F/W think DUT STA
doesn'tsupport PMF, then failed to roam to AP with PMF Required and
enabled.

Fix:
Get self-capability of 11w PMF from connected profile and pass to F/W in
WMI_ROAM_SCAN_MODE by wmi_fill_rso_tlvs after roaming.

Move target_if_cm_roam_fill_11w_params to csr_cm_roam_fill_11w_params,
put protocol part to csr connection manager.

Change-Id: I543799385ec8c0ec7afdf64e2310c24758305095
CRs-Fixed: 2807454
2020-11-03 00:55:25 -08:00
Will Huang
bb1e3c8933 qcacld-3.0: Fix get sap connected sta info fcs counter always 0
Stats event from target might have several sub events, and some event
has no peer stats but have adv/ext2 peer stats.

Check ext/ext2 peer stats even no peer stats in
target_if_cp_stats_extract_peer_stats(). Fix copy adv stats size error
in tgt_mc_cp_stats_prepare_n_send_raw_station_stats(). Although
get_station_stats_cb and get_peer_stats_cb is union callbacks,
better to assign to get_station_stats_cb because it is for
TYPE_STATION_STATS.

Change-Id: I0bead0cbb8b549cc538ef4a7327f0a8303c90bd1
CRs-Fixed: 2801842
2020-10-29 04:53:52 -07:00
Liangwei Dong
e8a9b19747 qcacld-3.0: Handle thermal stats event from target
Handle firmware thermal stats event and populate the thermal
information to upper layer with vendor command event.

Change-Id: I83286367ab542c08a205a7636f3d03189b0500e5
CRs-Fixed: 2786623
2020-10-23 10:03:04 -07:00
Gururaj Pandurangi
02b2ffc7d1 qcacld-3.0: Change return type to QDF_STATUS
Change return type of following APIs from int to QDF_STATUS.
wmi_unified_register_event()
wmi_unified_register_event_handler()
wmi_unified_register_raw_event_handler()
wmi_unified_unregister_event()
wmi_unified_unregister_event_handler()

Change-Id: I534b499edbcfec6eddea0e9ed48f9eb1a2e872c8
CRs-Fixed: 2791275
2020-10-23 07:56:41 -07:00
Abhinav Kumar
94b44452f6 qcacld-3.0: Discard 5G candidates based on RSSI threshold
To discard 5G candidates based on RSSI threshold, Introduce
a new INI "min_rssi_for_2g_to_5g_roam" to configure the RSSI
for High RSSI Trigger.

Min: -120
Max: 0
Default: -70

Change-Id: If4545296ef1b53d18b8ae4abf12d450f5e690240
CRs-Fixed: 2789017
2020-10-20 17:21:29 -07:00
Min Liu
47d4029c67 qcacld-3.0: API to report congestion
API to report congestion to userspace.

Change-Id: I324ae6701dace590daaa2c3f80412d6633cbf8f0
CRs-Fixed: 2766432
2020-10-13 23:18:32 -07:00
Chaoli Zhou
221e7e425e qcacld-3.0: Enable/Disable intrabss for Rome IPA
In the Rome IPA case, it need wlanhost side to
enble/disable intrabss by WMI_VDEV_PARAM_INTRA_BSS_FWD.
If set to 1, the ip data transfer between two wlan clients
should be:
wlan client1 -> wlan fw -> wlanhost -> wlan fw-> wlan client2.
If set to 0, the ip data transfer between two wlan cleints
should be:
wlan client1 -> wlan fw -> ipa -> wlan fw -> wlan clients2.

Change-Id: I105ddbdb58f2cd01bdf94521bd7934508889de5d
2020-10-13 04:13:15 -07:00
Deeksha Gupta
a51999d5fa qcacld-3.0: Enable the Partial scan for roam triggers
Currently the roam scan scheme for each trigger is hardcoded to
either full scan or partial scan followed by full scan. Based on
the new requirement for home scenario,the user space configures
roam scan scheme for various triggers. Add support to send scan
scheme type for indvidual roam triggers enabled from userspace.
The default value of roam scan scheme can be modifed for
below roam triggers:
WMI_ROAM_TRIGGER_REASON_PER,WMI_ROAM_TRIGGER_REASON_BMISS,
WMI_ROAM_TRIGGER_REASON_LOW_RSSI,WMI_ROAM_TRIGGER_REASON_BSS_LOAD,
WMI_ROAM_TRIGGER_REASON_BTM

Change-Id: If8b185897b813afc44af362d31172705ea4d7b5c
CRs-Fixed: 2785233
2020-10-09 06:47:17 -07:00
Abhishek Ambure
af02d10731 qcacld-3.0: Add support to send wfa test config to FW
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
2020-10-06 04:10:51 -07:00
gaurank kathpalia
7e46479450 qcacld-3.0: Add vdev id in RSO stop commands
Add vdev id in RSO stop commands to make sure that command is sent
for proper vdev. Also add vdev id in all RSO commands logs

Change-Id: Iefa1e8ba177a64e141726ebaef15b250446a0af2
CRs-Fixed: 2789615
2020-10-01 23:58:26 -07:00
Srinivas Girigowda
d36054fbd2 qcacld-3.0: components: Remove logs for qdf_mem_malloc() checks
qdf_mem_malloc() function already takes care of logging the
caller function name and line number in case of any allocation error.
Hence there is no need to add the error log again.

Getting rid of these unnecessary logs reduces driver memory footprint.

Change-Id: If0b9425f82f9ed793c7639c0ed09eb1f868b6d5c
CRs-Fixed: 2781932
2020-09-25 12:59:42 -07:00
hqu
8bd89b11dd qcacld-3.0: Send roam scan_mode/deauth/idle/trigger when rso enabled
In the process of rso update config, need to send roam
scan_mode/deauth/idle/trigger commands when rso enabled.

Another fix is to call csr_cm_roam_scan_offload_fill_rso_configs()
with ROAM_SCAN_OFFLOAD_STOP in wlan_cm_roam_fill_stop_req().

Change-Id: Ibcc2ab5d7da1bf838b386e0e1e486cd43072225a
CRs-Fixed: 2779549
2020-09-22 07:59:17 -07:00
Naman Padhiar
001338b360 qcacld-3.0: Send HOST wake up to FW over QMI
As part of WOW feature in WCN6750, send HOST wake up
to FW over QMI instead of WMI. To send HOST wake, add
PLD layer and call platform driver API to send QMI
EXIT_POWER_SAVE to FW.
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: Ia0a3f4c15662f9ee58649f5c6de965f65aeafe32
CRs-Fixed: 2779370
2020-09-21 16:55:38 -07:00
Abhishek Ambure
8c579f5a5b qcacld-3.0: Add support to get pmf bcn protect stats
Host sets WMI_REQUEST_PMF_BCN_PROTECT_STAT bit in stats_id param of
WMI_REQUEST_STATS_CMDID command. Firmware supporting pmf beacon
protection stats responds host with stats in wmi_update_stats_id
event. Host extracts PMF beacon protection stats from wmi_update_stats_id
event. Host adds PMF beacon protection stats in the response of vendor
command QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFO for STA mode.

Change-Id: Ib3cb06e03dbccdb9fa1782d414ed734bd97aa309
CRs-Fixed: 2705236
2020-09-12 01:59:34 -07:00
hqu
193727e455 qcacld-3.0: Add additional debug logs for rso commands
Add debug logs on the sending WMI_ROAM_SCAN_RSSI_THRESHOLD
/WMI_ROAM_FILTER_CMDID/WMI_ROAM_BTM_CONFIG_CMDID
/WMI_11K_OFFLOAD_REPORT_CMDID commands path.

If mawc roaming is not supported by firmware, don't send
WMI_ROAM_CONFIGURE_MAWC_CMDID command.

Add rssi reject AP list to the roam params process in function
csr_cm_roam_scan_filter().

Change-Id: I89e6dcac801e552877f7e918d1179dfa3466857a
CRs-Fixed: 2775101
2020-09-11 23:39:30 -07:00
Jianmin Zhu
e7c9718446 qcacld-3.0: Add 3 ini for data rssi check when roaming
3 ini:
roam_data_rssi_threshold_triggers
roam_data_rssi_threshold
rx_data_inactivity_time
If there's rx activity during latest rx_data_inactivity_time
and avg of data_rssi is better than roam_data_rssi_threshold, then
suppress roaming triggered by roam_data_rssi_threshold_triggers: low
RSSI or bg scan.

Change-Id: I5b41c4119e61392b50e52ab8ccb8650e5758f3b3
CRs-Fixed: 2768053
2020-09-07 03:17:49 -07:00
Pragaspathi Thilagaraj
36907e74d5 qcacld-3.0: Add changes to send WMI_CHAN_LIST_CMD in connection mgr
Add changes to send WMI_CHAN_LIST_CMD in connection mgr

Change-Id: I79f96c400314be4e8a0b1aad5ecfe04e638d552d
CRs-Fixed: 2768812
2020-09-03 19:27:30 -07:00
Srinivas Girigowda
87b638fadb qcacld-3.0: Remove redundant __func__ from the logs
The logging macros implicitly takes care of embedding function name
in the log, hence there is no need to include __func__ again.
Getting rid of redundant __func__ reduces driver memory footprint.

Change-Id: Idf4685539991f65205f19b27551cef699230c82e
CRs-Fixed: 2768575
2020-09-03 19:27:18 -07:00