Gráfico de commits

7920 Commits

Autor SHA1 Mensagem Data
Lin Bai
403aafca53 qcacld-3.0: Always print SAE TX addr
Enhance the print of SAE TA, to always log the address passed to
cfg80211_external_auth_request().

Change-Id: I0765b3a0465d7271b3bf42bc7498d4b7e673c88e
CRs-Fixed: 3357863
2022-12-12 18:38:13 -08:00
Yu Wang
52377c6b5c qcacld-3.0: free skb properly for vendor command reply
In __wlan_hdd_cfg80211_sr_operations(), it doesn't free the
skb for vendor command reply when fail to fill it, which
will result in memory leak in such case.

To fix it, free the skb properly, and replace the kernel APIs
cfg80211_vendor_cmd_alloc_reply_skb()/cfg80211_vendor_cmd_reply()
with internal APIs wlan_cfg80211_vendor_cmd_alloc_reply_skb()/
wlan_cfg80211_vendor_cmd_reply().

Change-Id: Iefa578c06782db579d8fe9f5453aca2bf6622b2d
CRs-Fixed: 3354148
2022-12-12 13:47:03 -08:00
Surya Prakash Sivaraj
e1ce015186 qcacld-3.0: Extend KEK and KCK lengths
For GTK offload functionality, currently only 16bytes of
KEK and KCK are being copied from the userspace.

In latest kernel, kek length and kck length are sent to the
host driver as part of set_rekey_data command. Therefore,
use this length to copy the kek, kck params in host driver.

Change-Id: Idef0247aaab22022a84898eca6eb2f010ca1bf1f
CRs-Fixed: 3345506
2022-12-11 16:57:51 -08:00
Jianmin Zhu
61c100819e qcacld-3.0: Fix wrong SAE tx addr issue in WoW mode
In WoW mode, roam auth event may comes before roam start event, so CM
isn't in ROAMING state at that time, can't assume ROAMING state.

Change-Id: Ibf868db1ca0f9863d4beae4c83227cf04fe55adb
CRs-Fixed: 3357115
2022-12-09 19:09:48 -08:00
Liangwei Dong
ead07b04fe qcacld-3.0: Make User CSA request as sync call
GO on 5 GHz channel 48, MLO STA 5 GHz (48) + 6 GHz (1) is UP.
SAP starts ACS, and before ACS complete, supplicant moves GO
to 5 GHz channel 149. Before GO CSA is completed, SAP ACS
is completed and start AP on 5 GHz channel 157. Then 3 home channels
are on same 5 GHz high band.
Fix by make User CSA as sync call and after GO CSA is completed
SAP should force SCC to low band during SAP starting, then avoid
3 home channels on high band.

Change-Id: I55ee559b47f270322ac3d2da7304dc5e8e104cf1
CRs-Fixed: 3352096
2022-12-09 11:51:25 -08:00
Surya Prakash Sivaraj
2095242876 qcacld-3.0: 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: I777a31acd56073d6a0312c47d95fe7d155b06fc6
CRs-Fixed: 3353102
2022-12-09 09:35:17 -08:00
Vinod Kumar Pirla
5f609834c4 qcacld-3.0: Remove unused session open event variable
In hdd_adapter structure, the qdf_session_open_event is
a declared as event type which is initialized but not used.
Remove this unused event variable and all its references.

Change-Id: Iec1ece36153a3c9986195bbc2cc19bf8a469f2ee
CRs-Fixed: 3354149
2022-12-09 07:32:04 -08:00
vijaraj
d607d5e5e8 qcacld-3.0: Add support for AKM suite 24
Add support for AKM suite 24

Change-Id: I4b5be990a0f2d2aa481374486a5790970cc04592
CRs-Fixed: 3299864
2022-12-09 07:31:54 -08:00
Ashish Kumar Dhanotiya
9520549e95 qcacld-3.0: Update dot11 mode correctly for Getbssinfo
Currently host driver does not update dot11 mode info correctly
for getbssinfo command if the dot11 mode is 11AX or 11BE.

With this fix add a logic to update the dot11 mode info
correctly in response to the getbssinfo command.

Change-Id: I9ebec3ab43fe4cff1cab5f646bcc93a8c6654fd0
CRs-Fixed: 3353630
2022-12-09 01:06:35 -08:00
Will Huang
1ad545d3d7 qcacld-3.0: Add SAP channel auto selection DCS callbacks with AFC
Add channel tx max power factor to existing ACS channel weight logic,
so if AFC available can automatically select Standard Power channel
which has higher 6 GHz tx power and better performance.

Add SAP best channel selection callback when AFC triggered DCS,
DCS module will invoke this callback and dynamic switch to best
channel/bandwidth if possible.

Change-Id: I300057c2b11d0b818f4e20ba51d6ab9b82f6a3ff
CRs-Fixed: 3204199
2022-12-08 07:40:20 -08:00
Srikanth Marepalli
f6ae09b410 qcacld-3.0: Add vendor attribute to include 6 GHz in roam 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 would include the 6 GHz PSC
frequencies by default.
This attribute allow that behavior to be modified to include PSCs only
if 6 GHz use has been detected in the environment.

Change-Id: I6dc380419f14b920737fd87cd9a487c28364563b
CRs-Fixed: 3351697
2022-12-08 02:48:30 -08:00
Aditya Kodukula
ae8eee9988 qcacld-3.0: Update ll_stats request pending flag properly
In the current driver implementation, host honors LL_STATS request
even in disconnected state. But in disconnected state, the ll_stats
request pending flag is not updated properly, which results in allowing
multiple LL_STATS requests being sent to FW. So, to avoid this issue,
update the flag properly.

Change-Id: I318455492dc69bd540044b593a405eacdf185ff1
CRs-Fixed: 3339867
2022-12-08 02:48:24 -08:00
Chaoli Zhou
6e710cfe9f qcacld-3.0: Fix sap_ctx_ref_count leak issue
Fix sap_ctx_ref_count leak issue in the P2P Go mode.

Change-Id: If6020833caf253884c776393b5844779607b74de
CRs-Fixed: 3348371
2022-12-07 16:18:59 -08:00
Rakesh Pillai
95ce766762 qcacld-3.0: Initialize default log level for DP modules
Initialize the default log level for all the
DP-modules.

Change-Id: I586139de2e9e637de6b678864b6a7f789e96fd88
CRs-Fixed: 3348734
2022-12-07 00:20:04 -08:00
Ben Wang
3afa883dea qcacld-3.0: Send mgmt frame directly if have no FT IE
When driver get (re)assoc response management frame from hostapd,
check if FT IE in it. If no FT IE in the frame, send it directly.

Change-Id: I780d1d6aff63276950a91fa7ee24ee99e3f6c98a
CRs-Fixed: 3338475
2022-12-06 20:12:37 -08:00
Vinod Kumar Pirla
c10aa97806 qcacld-3.0: Fetch peer addr from assoc resp in add key
Supplicant will send keys after EAPOL exchange on assoc link
is successful, even if peer is not created for partner links
in the MLO connection and can show peer not found error in
add key.

If peer is not found for ML VDEV from the MAC address, use
assoc response IEs to get partner link's MAC address.

Change-Id: Ieb8759e97fbe01b7964bb06f8715bffd43894890
CRs-Fixed: 3340583
2022-12-06 17:44:51 -08:00
Yu Tian
8e0cb38f60 qcacld-3.0: Fix Linux NS un-pause sequence in PMO
In PMO architecture, Linux Network Stack is unpaused earlier
than DP resume handler, some TX frames are dropped as DP
resuming is not ready. Change is aimed to fix the
unpause sequence.

Change-Id: I6cfcc7c4dd77f9cbcf1ac5b4a3d78a35dc3d16bb
CRs-Fixed: 3350279
2022-12-06 13:18:59 -08:00
Roopavathi Lingampalli
81e2d7813a qcacld-3.0: Add Rx thread feature support for HDD module
Add resume and suspend support for rx thread, rx refill threads
in HDD module through DP componentization.

Change-Id: I0cdd0d43ac742ef55fad2155bc8df063c5bb8657
CRs-Fixed: 3316821
2022-12-06 07:35:26 -08:00
Amit Mehta
ea9c714188 qcacld-3.0: Add change to clear per MAC obss stats
Add change to pass mac_id for which clear obss
request was received.

Change-Id: I9606f9c777b18ad3fc4383f1856975b04d384812
CRs-Fixed: 3343340
2022-12-05 23:59:59 -08:00
Asutosh Mohapatra
d10945a7b3 qcacld-3.0: Handle timer initialization gracefullly
Currently hdd_medium_assess_init() and hdd_medium_assess_deinit()
are not paired with event the events eSAP_START_BSS_EVENT and
eSAP_STOP_BSS_EVENT respectively. Hence multiple call traces
can be seen for eSAP_STOP_BSS_EVENT if eSAP_START_BSS_EVENT is
not invoked from __wlan_hdd_cfg80211_start_ap or SSR sequence.

To address this issue invoke hdd_medium_assess_init()
for eSAP_START_BSS_EVENT only from hdd_hostapd_sap_event_cb
if timer is not initialized already.

Change-Id: I361e371c8b59a226fe6cae97c6f66bec46eeeb0f
CRs-Fixed: 3349485
2022-12-05 23:59:54 -08:00
Vinod Kumar Pirla
041956887a qcacld-3.0: Set ML adapter only if target supports 11be
The adapter create flag for is_ml_adapter is set to true
by default for mission mode on primary interface and in
hdd_open_adapter() the flag is set but MLD is set only
after checking if target supports 11be. This leads to
adapter being set as ML type but MLD is null.

Check the target 11be capability as before making
adapter ML type and in open adapter for mission mode
bring the is_ml_adapter under if conditional check.

Change-Id: Ic0325ea6fde364e5180e9d164095b79bdabfee41
CRs-Fixed: 3352138
2022-12-05 22:01:47 -08:00
Amit Mehta
7f32cd3b69 qcacld-3.0: Fix check in wlan_hdd_tsf_reg_update_details API
Currently in wlan_hdd_tsf_reg_update_details there is check for
change in tsf_id and mac_id, If current and new values are same
tsf_details_valid bit will not be set (In case of tsf_id = 0 and
mac_id = 0), which we result in host continuously reading via WMI
command instead of scratch register.

So to Fix the issue only check for tsf_id_valid and update the
values.

Change-Id: I8007a40baa7be249afa5ff316d57983983ce988a
CRs-Fixed: 3351476
2022-12-05 22:01:41 -08:00
Rahul Gusain
91cf02ef44 qcacld-3.0: Optimize channel selection for NDI
The current algo maintains valid channel list for NDI from regulatory
channel list which leads to high space and time complexity.
As it is known that there are only three channels (144, 44, 6)
to support the NDI, so check for valid channel from these three
channels, instead of extracting from the channel list. If none of
above channels are valid, then take first valid channel from channel
list.
In this way, no need to maintain the channel list which helps to reduce
the time and space complexity.

Change-Id: I5dd2757ca952f4aaeb2a9ed74a47b4e547890245
CRs-Fixed: 3340778
2022-12-05 22:01:36 -08:00
Yu Wang
2294db2698 qcacld-3.0: fix API mismatch for vendor command processing
Some skb for vendor command reply is allocated with internal
API but reply/free is done with kernel APIs, which will break
the buffer tracking once NBUF_MEMORY_DEBUG and NETLINK_BUF_TRACK
are enabled.

To fix it, replace kernel APIs with internal APIs accordingly:
Replace cfg80211_vendor_cmd_reply() with
wlan_cfg80211_vendor_cmd_reply().
Replace kfree_skb() with wlan_cfg80211_vendor_free_skb().

Change-Id: If4f37b5dca5483a9b64c726d37d3959d3ecd699e
CRs-Fixed: 3350756
2022-12-05 18:42:06 -08:00
Tiger Yu
d57c2820e1 qcacld-3.0: Refine the TX flow info setting for legacy TX flow control
Refine the TX flow info setting independent on the IPA module to enable
the TX flow control feature for the TCP/UDP when IPA module is disabled.

Change-Id: Ib5d708e405dc93f410f100a5c335875b30601981
CRs-Fixed: 3346767
2022-12-05 14:59:26 -08:00
Srikanth Marepalli
15bbff508e qcacld-3.0: Add vendor attribute to optimize roam full scan
User can include/exclude the frequencies in roam full scan that
were already scanned by the previous partial scan, using the new
vendor attribute introduced as part of roam vendor command.
Host sends the configured value to firmware.
As per current implementation of roam scan, if there are no APs
found during partial scan, immediately a full scan will be
initiated as a fallback. This includes all channels that were
already scanned as part of partial scan.
This attribute controls the optimization, to exclude all channels
which are already scanned as part of partial scan.

Change-Id: Icd6381b4daadcfe32dabda131ae92e2e32f07f1d
CRs-Fixed: 3343657
2022-12-05 11:11:58 -08:00
Wu Gao
69d71759f0 qcacld-3.0: Hold PM lock during P2P connection in progress
Even though host already disabled BMPS during P2P connection in
progress, the PM lock in FW side still held and released again and
again. Which takes long time during P2P connection. Per suggestion
from FW team , set pdev parameter with id -
WMI_PDEV_PARAM_POWER_COLLAPSE_ENABLE,
  value 0 - hold lock
  value 1 - release lock

This change also fixed some kernel-doc error.

Change-Id: Iba130477595ca8952c5fe0c5ce7ad60b737e4c43
CRs-Fixed: 3331991
2022-12-04 15:25:58 -08:00
Liangwei Dong
0047371885 qcacld-3.0: Move Action OUI INI config to component
Move Action OUI INI config to component.
Add ucfg API to load/parse the configuration.

Change-Id: Ibaab5428bc575394b9a5b464639d24f80f042e93
CRs-Fixed: 3310697
2022-12-04 15:25:52 -08:00
Vinod Kumar Pirla
859b6feb21 qcacld-3.0: Refactor multi latency level configuration
Introduce a new API to configure the latency level for the adapter
which is currently configured in the hdd_start_station_adapter()

Change-Id: Icc91ca253de8f9590f4530d976bd4b54cf7a3eba
CRs-Fixed: 3297686
2022-12-02 20:07:54 -08:00
Sheenam Monga
f6de97d19c qcacld-3.0: Don't send success status to user space
Currently, If AP doesn't allow Prohibit to be set and user tries
to enable prohibit, host doesn't send command to FW to enable prohibit
but doesn't send failure status to user space.

Fix is to send failure status to userspace in case prohibit is not enabled.

Change-Id: Ic983b85d27e16314f63c02f88d3b1689d587d622
CRs-Fixed: 3344607
2022-12-02 18:05:17 -08:00
Liangwei Dong
17751d0800 qcacld-3.0: Protect STA powersave state change
At present the set/get user powersave state to MLME and send
command STA powersave mode to firmware operations are not
protected by lock.
Supplicant thread and hdd_ipv4_notifier_work_queue may have
race condition to access the user powersave flag. In that
case the STA powersave state may out of sync.

Fix by acquire sme lock to protect the powersave state set
sequence.

Change-Id: I76d848ea191f2319d015e0d70efad28f56a57d27
CRs-Fixed: 3342696
2022-12-02 12:28:54 -08:00
Vinod Kumar Pirla
b2a58e1b88 qcacld-3.0: Refactor station mode initialization
Introduce a new API to move HT VHT IEs initialization
code from hdd_init_station_mode() function.

The new API will have vdev objmgr as function parameter
which can be used to operate on per vdev instead of adapter.

Change-Id: Ifc6766f0d2ae8c0b272099a56b38ea71236eea08
CRs-Fixed: 3297555
2022-12-02 10:30:17 -08:00
Liangwei Dong
d5b09f8c5d qcacld-3.0: Check max bw support with regulatory API
For channel frequency 5825 MHz, need to check regulatory
API support 20 MHz band width only before reject it.

Change-Id: I6d4ac072e181921852603107b650d9349205e54d
CRs-Fixed: 3332847
2022-12-02 10:30:12 -08:00
Vinod Kumar Pirla
6bcb65a9f5 qcacld-3.0: Refactor vdev destroy wait for event
Refactor the hdd_vdev_destrory() API to move the wait
on vdev destroy event to a new API.

Change-Id: I8c27a12ab8aa5967cafb1b31475ea23ba9241cbe
CRs-Fixed: 3307015
2022-12-02 03:30:37 -08:00
Asutosh Mohapatra
5c6ded482a qcacld-3.0: Restrict mode change to FTM mode scenarios
Currently if driver load/unload is in progress or driver is
loaded and mode change to FTM mode is issued from the sys
path, memory leakage occurs during driver unload.

To address this issue, don't change mode if driver is already
loaded or load/unload is in progress.

Change-Id: I09cacaf11d516c62de1a9699547eb01476afdc1f
CRs-Fixed: 3349217
2022-12-02 01:25:17 -08:00
Krupali Dhanvijay
3ecc75ecc3 qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_empty_scan_refresh_period_global() and
sme_get_neighbor_scan_refresh_period() apis
and replace it with ucfg api.

Change-Id: Iaa511024467f45dc408da3db202b25f9b5276453
CRs-Fixed: 3335898
2022-12-02 01:25:11 -08:00
Krupali Dhanvijay
091ad81795 qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_roam_opportunistic_scan_threshold_diff() and
sme_get_roam_scan_home_away_time() apis and replace it with ucfg api.

Change-Id: I7de3bf3faff990cbf667cb8106044a33f16f3a46
CRs-Fixed: 3335898
2022-12-02 01:25:05 -08:00
Krupali Dhanvijay
7c037e6d50 qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_wes_mode(), sme_get_is_lfr_feature_enabled()
and sme_get_is_ft_feature_enabled() apis and
replace it with ucfg api.

Change-Id: I7715ba361264fcb2c0c93d8d073813538347dd31
CRs-Fixed: 3335898
2022-12-02 01:24:59 -08:00
Krupali Dhanvijay
2c38836b37 qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_neighbor_scan_max_chan_time() and
sme_get_neighbor_scan_max_chan_time() apis and replace it with ucfg api.

Change-Id: I8a9de18f22e352ed8c64f415fd0455f64227a857
CRs-Fixed: 3335898
2022-12-02 01:24:53 -08:00
Krupali Dhanvijay
45eb0c0f4e qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_roam_rssi_diff() and
sme_get_is_ese_feature_enabled() apis and replace it with ucfg api.

Change-Id: I226efbcf8ecd44b08684a3e17e2db987c169946d
CRs-Fixed: 3335898
2022-12-02 01:24:48 -08:00
Krupali Dhanvijay
5afc9f98c7 qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_empty_scan_refresh_period() and
sme_get_neighbor_scan_min_chan_time() apis and
replace it with ucfg api.

Change-Id: I372fcbcf4f96af2c642a5fe93c0f8e2ce98174ea
CRs-Fixed: 3335898
2022-12-02 01:24:43 -08:00
Krupali Dhanvijay
b3021e935e qcacld-3.0: Clean up code for sme apis
Clean up the code for sme_get_neighbor_lookup_rssi_threshold() and
sme_get_roam_rescan_rssi_diff() apis and
replace it with ucfg api.

Change-Id: Idc7503eaa316d68dc05aba8345970ace7bc8ad45
CRs-Fixed: 3335898
2022-12-02 01:24:37 -08:00
Krupali Dhanvijay
a3a9866f7d qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_valid_channels() and
sme_get_roam_intra_band() apis and
replace it with ucfg api.

Change-Id: Ic2f07e2193186d1e1ac81f6e5909417c10ab9c89
CRs-Fixed: 3335898
2022-12-02 01:24:32 -08:00
Rachit Kankane
f5b2eeb7f6 qcacld-3.0: Fail SR commands in concurrency
Fail all the Spatial Reuse commands if SR in concurrency
is not supported.

Change-Id: Ifcee0cfb6f52bcde5bcb4193f4f8bb336ba6b191
CRs-Fixed: 3338582
2022-12-01 08:19:26 -08:00
Asutosh Mohapatra
b9a928a6c5 qcacld-3.0: Use link_id stored in vdev in case of MLO
Currently, host hardcodes link_id value to 0 and sends to user space
hence getting multiple call traces as the 0th bit of valid links
is not set.

To address this issue send link_id extracted from beacon data to
user space.

Change-Id: I522518eed418b502e2a806ef18743290e465e827
CRs-Fixed: 3338480
2022-12-01 08:19:20 -08:00
Jeff Johnson
db8100e67e qcacld-3.0: Fix hdd/inc documentation
The kernel-doc script identified documentation issues in the hdd
layer, so fix the ones in the "inc" folder.

Change-Id: I0fda8ea1ce929ad5e0cc54f86a9de5a46b3f7d38
CRs-Fixed: 3346527
2022-12-01 04:17:25 -08:00
Jeff Johnson
dd8340e82c qcacld-3.0: Rename wlan_hdd_cfg80211_spectral_scam_get_config()
Rename wlan_hdd_cfg80211_spectral_scam_get_config() to replace
incorrect term "scam" with "scan". In addition, clean up existing
documentation issues.

Change-Id: I1d7f11e274bcb0e1e09e8292b75554d256a5c6fd
CRs-Fixed: 3344908
2022-12-01 04:17:20 -08:00
Jeff Johnson
e27691cfb8 qcacld-3.0: Rename hdd_get_ml_adater()
Rename hdd_get_ml_adater() to fix misspelling of "adapter".

Change-Id: If2d13823308042c60cd4c16208a21142fa41ffd6
CRs-Fixed: 3343876
2022-12-01 02:25:12 -08:00
Jeff Johnson
c91958c650 qcacld-3.0: Fix hdd/src documentation
The kernel-doc script identified documentation issues in the hdd
layer, so fix the ones in the "src" folder.

Change-Id: I20307c4c7e02163a13a79dfd4fcf8fc734a4b230
CRs-Fixed: 3343791
2022-12-01 02:25:06 -08:00
Tiger Yu
a98c209617 qcacld-3.0: Fix potential uninitialized peer might be used directly
The uninitialized peer might be used directly if device mode is SAP mode
and the link_vdev is not mlo vdev in the wlan_hdd_add_key_all_mlo_vdev.

Init the peer to NULL before checking the each link_vdev to address this
potential issue.

Change-Id: Ifbf2b68a030fada8a2a1b1cacf5d2a6ef703befe
CRs-Fixed: 3344320
2022-11-30 13:07:07 -08:00