Gráfico de commits

296 Commits

Autor SHA1 Mensaje Fecha
Vinod Kumar Pirla
1ad86188f4 qcacmn: Avoid uninitialized access from all conditional branches
Stack variable 'mlme_info' in cm_connect_complete() can lead to
uninitialized access if BSSID in 'resp' function argument is NULL.

Initialize the variable to avoid unanticipated results.

Change-Id: Id9db244c8168740e4d5c0d71959b578551773bb6
CRs-Fixed: 3576785
2023-08-02 04:55:38 -07:00
Vinod Kumar Pirla
35ea97c560 qcacmn: Enhancements for link switch connect
Introduce following for link switch disconnect:
    1) Connect request source.
    2) Connect request reason.

If the set MAC address response for new link is successful, post
connection on new link and transition the link switch state to
connecting. If the status of connection is successful, update
the state to link switch complete or else directly go for
deserializing link switch command and posting response to FW.

Based on the final state of link switch at the time of sending
FW response, send the appropirate status of link switch and reset
the state of link switch to idle post FW notify.

Don't unlink BSS incase of failure in connection.

Don't indicate connect results to userspace.

As we are already in serialization due to link switch,
don't serialize/deserialize connection command if it
is due to link switch.

Incase of race condition between link switch connect and
userspace connect/disconnect always abort link switch connect.

Change-Id: Ie350b52021c36802b82d6cb5f6f441fe1bd10458
CRs-Fixed: 3556529
2023-08-02 04:55:17 -07:00
Vinod Kumar Pirla
b41d140574 qcacmn: Enhancements for link switch disconnect
Introduce following for link switch disconnect:
   1) Disconnect source.
   2) Disconnect reason.
   3) Link switch BIT in CM_ID to identify link switch request

Don't notify link switch disconnect to initiate disconnect on
other connect VDEV of MLO mgr.

Don't notify userspace if the disconnect request is due to
link switch.

Don't notify netdev to stop queues on link switch disconnect.

Don't flush any pending disconnect/connect request on complete
of link switch disconnect request.

Don't attempt to serialize/deserialize disconnect command
if it is a link switch command ID due to either disconnect request,
disconnect complete or disconnect request flush.

Before start of link switch set the VDEV flag as MLO link VDEV
to leverage the disconnect/connect checks for link VDEV and
restore the flag at the end of link switch. This will impact
when link switch on assoc VDEV is received for which initially
the flag is not set.

Check status of link switch disconnect done API to either
proceed further in link switch or terminate the link switch.
If any userspace disconnect and link switch disconnect race
condition, always abort link switch disconnect and notify
failure to FW.

Change-Id: I6ec2a850d49f5ec6df2ec868c290f19203cd8c88
CRs-Fixed: 3556481
2023-08-02 04:54:41 -07:00
Aravind Kishore Sukla
db33c1e902 qcacmn: Downgrade connection to HE mode
STA is not able to connect to 11be non-WPA3 mode AP.

STA need to decide whether to connect in EHT or not at
the time of connection to AP based on security configuration.

Change-Id: I812f5c322d36ba44f63d4e27b5ec65a2846b3265
CRs-Fixed: 3404747
2023-08-01 20:30:03 -07:00
Prasanna JS
ae88affbf8 qcacmn: Add 6 GHz check in ucfg_cm_get_connected_band
Add 6 GHz check in ucfg_cm_get_connected_band

Change-Id: I323d165c179ee4ce744bb9d06e6af9786f25ea31
CRs-Fixed: 3566304
2023-07-27 18:54:39 -07:00
Arun Kumar Khandavalli
4c2b8d81e4 qcacmn: Reject partner link connection in case of IE parsing failure
Currently while updating the mlo vdev flag host checks whether the
mlie is present, this vdev flag is used to send various ml information
to firmware. In certain cases because of issue due to parsing of
ml probe response or AP issues mlie is not present in the partner link
entry, resulting in host sending ml flags for assoc vdev and not setting
ml flags for partner vdev's resulting in undetermined behaviors in
firmware.

If mlie is not present during the partner link association stay associated
on the available links.

Change-Id: I3134555dc955ffc96a50584c2cfc6713b2673cc4
CRs-Fixed: 3555133
2023-07-25 00:19:26 -07:00
Deeksha Gupta
9b7258ffff qcacmn: update mlme info for standby link
update  AP link information for standby link.

Change-Id: Ie5ff52e2ecea4548f738965efcfee54e08f63eb5
CRs-Fixed: 3530713
2023-07-18 12:50:10 -07:00
Vijay Patil
c1d9d64d61 qcacmn: Add change to replace free connect request API
In current scenario osif_cm_free_connect_req() and mlo_free_connect_ies()
used to free up connect request and its sub memory.
Similarly cm_free_connect_req() and cm_free_connect_req_param() also
free up the connect request and its sub memory.

So replace osif_cm_free_connect_req() with ucfg_cm_free_connect_req(),
mlo_free_connect_ies() and qdf_mem_free() with wlan_cm_free_connect_req()
and  mlo_free_connect_ies() with wlan_cm_free_connect_req_param().

Change-Id: Ie62603652dd77ae5ae9f7b7085d4b9bb257eaf53
CRs-Fixed: 3554234
2023-07-12 07:49:19 -07:00
Vijay Patil
01da59899e qcacmn: Add fix to free roaming info from copied reassoc response
In current scenario during OWE roaming when HB failure occurs,
it should clean copied reassoc response and roaming info. But it
is not getting freed which leads to memory leak and host driver
crash while on idle shutdown.

Free copied reassoc response at mlo_dev_ctx_deinit().

Change-Id: I1a25e4ad1ba62d3d6b90da38cb5b7ab7c3f8e91a
CRs-Fixed: 3530058
2023-06-20 06:39:18 -07:00
Jianmin Zhu
da25bf14e9 qcacmn: Select best link as assoc link
For mlo 5+6, 6 GHz band score is higher than 5 GHz, so 6+5 total score is
higher than 5+6, 6+5 is always selected before 5+6 even 6 GHz link score is
much worse than 5 GHz.

To fix it, calculate each link score for each MLO AP, if assoc link is
best link, add a boost score, then it can be selected first.

Update band weight and score for both SLO and MLO, select average of link
band score as MLO band score.

Change-Id: If0714fa94031d5746d89388917540f0e34086d86
CRs-Fixed: 3483850
2023-06-17 17:02:27 -07:00
Abhishek Singh
b22f325247 qcacmn: Fix connection manager logs by adding CM_PREFIX_FMT
Fix connection manager logs by adding missing CM_PREFIX_FMT.

Change-Id: I043bf571006279dfcbec70e1d4fac564d6a20b6b
CRs-Fixed: 3527590
2023-06-13 15:36:46 -07:00
Sheenam Monga
806cbc9936 qcacmn: Handle negative MLO prefer percentage
Currently type of score is unit32_t due to which
negative value calculated is tried to change
to uint32_t and MLO score is getting boost instead
of deteriorate.

Fix is to calculate score in int32_t type and then move
to unsigned value.

Change-Id: Id28f58b44e1a1246f491b28a86de1c78c5e97215
CRs-Fixed: 3525654
2023-06-13 09:42:33 -07:00
Jianmin Zhu
a013c998bd qcacmn: Fix roam abort for 2nd sta connect
During wlan0 vdev0 roaming, before roam sync received,  2nd sta wlan1
vdev2 connect req came, disabled RSO of vdev0, so vdev0 roam aborted, and
disconnected.

To fix it, serialize roaming disable during connect too, don’t disable
roaming of other connected sta until serialization allowed in
wlan_serialization_activate_cmd ->cm_connect_active

Change-Id: Ic2e626154b570a1691b8f3d684d21d8a107d09dc
CRs-Fixed: 3510787
2023-06-08 20:46:59 -07:00
Pragaspathi Thilagaraj
fe4e1c1ae3 qcacmn: Retry MLO connection with SLO on connection failure
Currently if MLO connection fails then connection is tried
with same link until it reaches to maximum no of trials but
connection is not tried with same assoc link by changing partner
link or with SLO.

So, when vendor roam score algorithm is enabled, add logic to try
MLO connection again by reducing number of partner links with
each retry till SLO connection is tried.

Change-Id: Ic0e3acd2198cfa0ed0ff893da6ae32d669d32a41
CRs-Fixed: 3521159
2023-06-08 05:09:28 -07:00
Sheenam Monga
339c48c7d7 qcacmn: Update etp score for MLO connection
Update etp score as per the mlo_tp_preference_percentage ini.
MLO score require to be boost or reduce based on the mlo
prefrence percentage ini, so update score as per the
provided value.

Change-Id: I0263b0f83207c279a2b4e88ac7b08b3b18a49df4
CRs-Fixed: 3456420
2023-06-05 13:53:23 -07:00
Gangadhar Kavalastramath
ad4dd18f1b qcacmn: Remove self_reassoc in LFR2
On reception of reassoc req from user space to the
connected AP, wlan driver proceeds with reassociation
without clearing the keys. This leads to encrypted EAPOL
frames in LFR2. To avoid this, trigger disconnect & delete
keys before proceeding with reassociation.

Change-Id: I02536a0049517ff5e8459834df493dccbf5a7a62
CRs-Fixed: 3433224
2023-05-25 10:10:07 -07:00
Jianmin Zhu
487b3410f1 qcacmn: Fix wrong sta puncture bitmap issue
When wlan_reg_extract_puncture_by_bw return fail, new_punc isn't
filled, it is not initialized too, will be random value, it will
make F/W assert if the wrong puncture passed to F/W.

To fix it, initialize local var new_punc to 0.

Change-Id: I1554e1f55a2f5b319abc94b8409a5c4aed78e223
CRs-Fixed: 3506816
2023-05-24 10:49:52 -07:00
Liangwei Dong
fa5b39c322 qcacmn: Allow roam if prev_bssid is AP mld address
"prev_bssid" can be AP mld address if current connection
is mlo connection. Allow roam if "prev_bssid" is AP mld
address.

Change-Id: Iebc71acae11fcbfb4fc98ec2199d546d71ef057c
CRs-Fixed: 3489879
2023-05-14 22:57:58 -07:00
Vijay Raj
12fbcdf042 qcacmn: Modify CM_NO_CANDIDATE_FOUND value in connect fail reason enum
In the enum wlan_cm_connect_fail_reason, the value of
member CM_NO_CANDIDATE_FOUND is modified to 1 in order
for value of members of the enum will begin from 1.

Change-Id: I3f4686b32cec92b45e03b30b4293b4571a3f01fe
CRs-Fixed: 3486473
2023-05-11 09:01:14 -07:00
Asutosh Mohapatra
d549261151 qcacmn: Add new cfg item to disable SP AP connection to VLP STA
Add a new cfg item to drop connection request if
AP is operating in 6 GHz SP mode and STA doesn't
support SP mode but supports VLP mode.

Change-Id: Icbe109abecdd73ceedee8ecec45ae82cd47464e0
CRs-Fixed: 3470599
2023-05-10 09:28:24 -07:00
Asutosh Mohapatra
9387aca043 qcacmn: Remove relaxed_6ghz_conn_policy cfg item
relaxed_6ghz_conn_policy cfg item is no longer needed
with new regulatory policy as there is no dependency
on STA, AP country code to find 6 GHz power mode for
connection and also connect request should be rejected
if AP is advertising VLP and STA doesn't support VLP.

Hence remove this cfg item and the related APIs.

Change-Id: I215939bdce2e08eb9d4c5286487941198ab19232
CRs-Fixed: 3470569
2023-05-10 09:28:13 -07:00
Abhishek Singh
9266c2d271 qcacmn: Fix cm req accessed outside cm req or CM lock
wlan_cm_get_rnr, uses the cm request without lock and pass the
pointer to the caller instead of passing a copy.

Fix it by copying the rnr info while holding the lock. and move the
cm req access logic to core from dispatcher.

Change-Id: I72861021d98b996a379a2917874b5dadbc37c6af
CRs-Fixed: 3483871
2023-05-09 13:33:47 -07:00
Jyoti Kumari
e663fa7cd3 qcacmn: Check whether vdev supports mlo cap or not
Scenario: There is dual sta present in HBS mode in DUT where one
sta is on wlan0 interface and it has 11be capability, so it has
formed ML connection with ML AP. The another STA is present on
wlan1 interface and this STA also supports 11be capability. But
as per current design, host supports 11be with MLO. It doesn't
support 11be alone. Also 11be with MLO is supported only in wlan0
interface. So for another connection which are present in wlan1
interface, even if it supports 11be host will downgrade to 11ax
and form connection.

During the formation of second connection, host will sends peer
create command(WMI_PEER_CREATE_CMDID) to firmware. Before sending
this command, host checks only eht cap in cm_create_bss_peer()
and fills the mld_mac addr. Because of that, DP assumes that
there is an ML connection and it creates MLD peer on wlan1
interface. Due to this, it causes ping failure on wlan1 interface
as the ICMP response might be coming on incorrect peer and it's
getting dropped.

As part of fix, check eht cap as well as vdev is mlo supported or
not in cm_create_bss_peer()

Change-Id: I60dbb8ee91025266d0b9b48075dc2db9a407e015
CRs-Fixed: 3454128
2023-05-04 11:35:10 -07:00
Vinod Kumar Pirla
7382a9f799 qcacmn: Use MLD address of BSS peer for PMKSA operations
If PMKID present in AP expires, AP rejects the PMKID based association.
Current design is to clear the cache using BSSID/MAC address of link
in such cases to let a fresh SAE authentication to happen.
But host driver stores PMKSA with MLD address for ML BSS.
Adapt to the same and update PMKSA cache clear APIs to use
MLD address instead of link address.

Introduce new API which return the legacy address for non-ML
association and MLD address for MLO association of the BSS peer.
Use this API to get the correct entry from PMKSA cache to delete.

Introduce new utility API to fetch the MLD address from scan entry.
Use this API to get the MLD address of the ML candidate.

Change-Id: Id35a3937ba6649e8ba7ae8f849ac1ed2a9cc83f8
CRs-Fixed: 3453839
2023-04-26 18:25:02 -07:00
Jianmin Zhu
07390f2011 qcacmn: Don't handle assoc vdev roam if link vdev failed
If link vdev roam sync failed and new dp mlo peer wasn't created,
assoc vdev roam sync was still handled, dp peer update failed
and asserted for mlo peer not found.

To fix it, if link vdev roam sync failed, return to trigger HO_FAIL,
don't handle assoc vdev roam sync.

Change-Id: I47aa70723cd741839cdb8fb21d446730a8ed80e5
CRs-Fixed: 3468553
2023-04-18 14:27:22 -07:00
Pragaspathi Thilagaraj
4c252e1598 qcacmn: Add if_mgr support to handle STA CSA
Add if_mgr support to handle STA CSA complete notification and
SAP CSA Started and complete notification.
Before CSA vdev restart on SAP side, disable TDLS off channel.
After CSA, check if TDLS is allowed for the current concurrency
and take action accordingly.

Change-Id: Icbadb898f5b468717f74f92a0993c05b59719205
CRs-Fixed: 3445113
2023-04-12 12:54:11 -07:00
Liangwei Dong
3a759ca431 qcacmn: Update candidate list before try next
Some IOT APs only allow to connect if last 3 bytes of
BSSID and self MAC is same. They create a new bssid on
receiving unicast probe/auth req from STA and allow STA to
connect to this matching BSSID only. So boost the matching BSSID
to try to connect to this BSSID.
And add logic to refresh the candidate list before next
candidate try when the last candidate connect fail.

Change-Id: I482e122c8c9febbab42f64013fbb78c266f49655
CRs-Fixed: 3432618
2023-04-11 02:28:01 -07:00
Surya Prakash Sivaraj
88804f2cfc qcacmn: Add support for AKM25
Add support for FT-SAE-EXT-KEY AKM.

Change-Id: I832b414b31d42113eec6d099ba4c62e76dfe6cb1
CRs-Fixed: 3406626
2023-03-27 11:21:18 -07:00
Jyoti Kumari
48ed0b7680 qcacmn: Pass vdev_id as an argument in policy_mgr_get_pcl()
Pass vdev_id as an argument in policy_mgr_get_pcl()

Change-Id: I047ec205632798a3e4e0da5ada6677764ae4f203
CRs-Fixed: 3412907
2023-03-22 00:40:43 -07:00
Vinay Adella
c847ddd958 qcacmn: Clear partner link state before starting to connect
This is needed in case the STA is configured with more MLO links
than the AP. It will make sure only links that the AP allows
are in use in the STA MLO as well.
Also check for mlo flag on vdev before sending link connect and
updating partner bitmap.

CRs-Fixed: 3423668
Change-Id: Iceec3cf7e8dc7e5bc0a29c56b990faef4f741158
2023-03-19 22:53:08 -07:00
Jianmin Zhu
b2e038a217 qcacmn: Fix mlo assoc vdev disconnect before link dev issue
Assoc dev disconnect happened before link vdev for following sequence
1) SB disconnect followed by NB disconnect.
2) SB disconnect queue disconnect on both link and assoc same time.
3) NB disconnect queue link disconnect first and wait for it to complete.

Fix in mlo_sync_disconnect by using sync API only for assoc vdev, for link
vdevs, let the non-sync API post the disconnect, thus all disconnect goes
in 1 instance and wait for assoc disconnect (last) to complete, similar to
SB disconnect.
With this both vdev1 and vdev0 disconnect will be queued at same time, thus
maintain the sequence.

Also optimize the wait time of the assoc vdev in
cm_disconnect_start_req_sync, to include all link disconnect time as well
(DISCONNECT_TIMEOUT * 2 + 5000).

Flush old disconnect only for non-MLO and assoc link, do not flush for link
vdev.

Change-Id: Ibaf4051d6e06a8e8354571e87883ac72b6ac07f0
CRs-Fixed: 3420508
2023-03-08 00:45:01 -08:00
Liangwei Dong
1ac458ec54 qcacmn: Abort STA connecting if NDI stop bss pending
When NDI stop bss is pending in serialization queue and
STA connect is in progress with multiple candidate trying,
NDI stop bss will be timeout and vdev clean up will not happen
if STA connect takes too much time.

Fix by stop next candidate trying if NDI stop bss in
queue.

Change-Id: I29ca38f420586862f294d10041fc1754f8b485ce
CRs-Fixed: 3402121
2023-02-20 15:02:45 -08:00
Paul Zhang
79720d811d qcacmn: Add support for 2+ mlo links
Add support for generating link specific assoc request/response
and probe response for 2+ mlo links.

Change-Id: Iadd09efeb0b0098baeae25f3b1968826e75dedc4
CRs-Fixed: 3049640
2023-02-17 09:32:31 -08:00
Liangwei Dong
33d575de95 qcacmn: Add new roaming invoke source enum
Add new roaming invoke source enum CM_ROAMING_LINK_REMOVAL.
That will be used in link removal process to trigger STA
roaming to new AP.

Change-Id: I78cb1fcfce8e11fcca33ce99c80a4d6444ac3fea
CRs-Fixed: 3353004
2023-02-14 19:49:41 -08:00
Pragaspathi Thilagaraj
52c0ba9a7a qcacmn: Choose the most secure AKM for association
Driver doesn't sort the AKM properly based on security
to use for the association. This causes lower secure AKM to be
used when AP advertises multiple AKMs.

Choose more secure AKM for association. Below is the new
changed order of Secure AKMs:
1. FT-FILS SHA384
2. FT-FILS SHA256
3. FILS SHA384
3. FILS SHA256
4. WPA3 FT-SUITE B Sha 384
5. WPA3 802.1x Suite B - 192
6. WPA3 802.1x Suite B
5. WPA3 FT-SAE
6. WPA3 SAE EXT Key
7. WPA3 SAE
8. WPA3 OWE
9. WPA3 DPP
10. WPA2 FT-802.1x
11. WPA2 802.1x SHA256
12. WPA2 802.1x
13. WPA2 FT-PSK SHA384
14. WPA2 PSK SHA384
15. WPA2 PSK SHA256
16. WPA2 FT-PSK
17. WPA2 PSK

Change-Id: I18910b56b15624725ad4fc0cdb0b37ff241e82ff
CRs-Fixed: 3400535
2023-02-14 04:44:42 -08:00
Jianmin Zhu
fad8228802 qcacmn: Fix wrong congestion score issue
When calculate mlo score, partner link congestion score is used wrongly.
Total congestion score after considering both assoc and partner link should
be used.

Change-Id: I6f94fc1bcbfd1adf547dbf519e03524409509260
CRs-Fixed: 3399624
2023-02-11 01:12:07 -08:00
Surya Prakash Sivaraj
c595a4abdf qcacmn: Cleanup link vdev SM on roam HO failure
In legacy to MLO roaming case, the link vdev will be
moved from INIT->UP via EV_ROAM event. Similarly, if
the Hand-off fails in host due to host-related handling,
treat the failure as HO-FAILURE and move the link VDEV
SM from UP->INIT directly.

Change-Id: Ia6bfeb958f0302a934d24c9b40fadd4a8f557236
CRs-Fixed: 3389148
2023-02-07 20:02:03 -08:00
Abhishek Singh
7ce0c12e54 qcacmn: Use freq hint in scan for ssid
When Scan db reaches max size, driver deletes the oldest node,
so chances are that BSS on 1st freq scanned is removed.

This lead to scan for SSID, which will do a scan again on
all freqs, and thus we end up in flushing the entry again.

TO fix this use freq hint to scan for ssid to quickly find the
AP so that required AP remains in scan database as it will
be the latest entry.

Change-Id: I28849ee97ff1f492d372870c362288206c4ec9a5
CRs-Fixed: 3392831
2023-02-03 03:36:44 -08:00
Divyajyothi Goparaju
61d3b23a1c qcacmn: Give valid range of value for aliasing INI
There are two different name with different range of value for
aliasing INI's.
So, it should pick the valid range of value wrt INI name.

Change-Id: I81ece854a2d8b34f232e03c8ab835161d58c56b1
CRs-Fixed: 3355346
2023-01-30 10:36:50 -08:00
abhinav kumar
3bf50ce182 qcacmn: Avoid using fw-api defined enum at the CM layer
Currently, the definition of WMI_ROAM_GET_VENDOR_CONTROL_PARAM_ID
is present at the fw-api level. The host should not be using fw-api
definitions outside the WMI TLV code. To make sure it, Add
host-defined enum vendor_control_roam_param which defines the param
IDs that the host supports.

Change-Id: I0aaba99c1af7c7c50a62f9bc763d0968c3a3a99c
CRs-Fixed: 3366594
2023-01-27 10:39:38 -08:00
Jeff Johnson
b4b8c2933f qcacmn: Fix umac/mlme documentation
The kernel-doc script identified some documentation errors in the
umac/mlme folder, so fix them.

Change-Id: I84617fe2007e51dcb009801ebc6cdf87c0d0a686
CRs-Fixed: 3381478
2023-01-26 12:25:15 -08:00
Paul Zhang
37b58d0525 qcacmn: add critical update feature
Add the code logic to save the BSS parameters change count (BPCC)
for critical update feature.

Change-Id: I3fafd44af8661d1dcf5d7bbde84d2729d390a44c
CRs-Fixed: 3324174
2023-01-26 01:25:10 -08:00
Krunalsinh Padhar
ce5f301bce qcacmn: initialize spinlock after memset function
In some scenarios, memset function is called after spinlock initialization,
which clears the container holding the spin lock causing the spinlock to
be uninitialized. Fix this by initializing the spinlock after the container
has been cleared with memset().
Change-Id: I87e9844e95e814d8dca25e591a6494516d929c70
CRs-Fixed: 3377971
2023-01-24 19:13:23 -08:00
Amruta Kulkarni
2cd3406a9a qcacmn: Add handling 1x roaming case
- Add osif callback api to get scan ie params
- Made few mlo manager api's public

CRs-Fixed: 3288038
Change-Id: I15a764682b8164eb1b66adeff44d7e344f2563c3
2023-01-24 09:41:08 -08:00
Santosh Anbu
cec48e1067 qcacmn: Print psoc id along with vdev id
As part of VDEV SM history only vdev id is logged.
In multi psoc scenario it's difficult to differentiate vdevs across
psoc as vdevs share same id across psoc.

Hence add change to log psoc id along with vdev id.
CM-PS_0-VD_1: Connection SM PSOC:1 VDEV:2

Change-Id: I83f6b69e1ea308032ad8a58e4c81b74b76a277d3
CRs-Fixed: 3364875
2023-01-20 19:09:03 -08:00
Rahul Gusain
cb88ed3ace qcacmn: Notify first connect failure response
Currently, host driver notifies the last connect failure to upper
layers. But some customer needs the first connect failure response.
So, in this change, cache the first connect failure response in connect
request structure and it retrieves it when all candidates are failed
to connect and notify it to upper layer.

Change-Id: I850c20cdfeb0c8423d074094f97c83599e43b409
CRs-Fixed: 3378788
2023-01-19 12:28:26 -08:00
Rahul Gusain
e140e6779e qcacmn: Add new INI param for BSSID filter
Currently, driver only sorts the BSSID according to scoring algo.
But some customer need to prioritize the BSSID HINT and filter out
BSSID (except BSSID HINT) which have RSSI value lower than value
defined in INI parameter.
For this, add new INI parameter to configure RSSI value
and check this RSSI value for all BSSID expect BSSID HINT.

Change-Id: Ib942f32878b35cbdb20ba669808f4a5c8820ebd7
CRs-Fixed: 3378781
2023-01-19 05:04:23 -08:00
Asutosh Mohapatra
7bdff08dd1 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-01-18 06:01:04 -08:00
Vinod Kumar Myadam
95b9b6dc2f qcacmn: Update API to use super channel list
The current channel list alone is not enough to represent the
capability of the chip or device. Given a channel, in many
cases it may be required to know all the power modes that are
supported by this channel.

Remove wlan_reg_fill_channel_list to use the super channel API
wlan_reg_fill_channel_list_for_pwrmode.

Change-Id: I9645caff236af786b6376608be2aa56a28fe689c
CRs-Fixed: 3357161
2023-01-13 16:38:16 -08:00
Surabhi Vishnoi
c912d8c2e6 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-01-03 11:48:49 -08:00