The kernel-doc script identified a large number of kernel-doc issues
in the umac/global_umac_dispatcher folder, so fix them.
Change-Id: I576614727dd2be174563c2af4bb055ebb05e61fd
CRs-Fixed: 3375263
Add API reg_set_power_event_received_flag to set
is_6g_afc_power_event_received flag with a given value.
Change-Id: I322c3724f23c611d1a0d65248b777501c742000e
CRs-Fixed: 3260971
Per the coding style "functions [...] have the opening brace at the
beginning of the next line."
In umac/cmn_services/crypto there are two files that are not
consistently following this style, so fix them.
That will address the following error flagged by the Linux checkpatch
script:
ERROR:OPEN_BRACE: open brace '{' following function definitions go on
the next line
Change-Id: I774e027c594689b8ab4ff49bab5fc0b536d685f6
CRs-Fixed: 3384735
Currently host uses LPI as default power type when STA and
AP country is same without checking if powertype advertised
by AP is valid for client or not.
To address this issue default to power type advertised by AP.
Change-Id: I59144b020bed5af49dea8fdaad0e59daa556fefe
CRs-Fixed: 3381295
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
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.
VM-PS_0-VD_1: VDEV SM PSOC:0 VDEV:1
Change-Id: I0bba894a79b3ad9e7ce64ec5219eb7c65767f19b
CRs-Fixed: 3364875
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
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
To support fixed channel SAP in unsafe channels, driver needs
to cache and retrieve SAP start mode i.e. ACS or fixed.
Add a new param is_acs_mode to vdev_mlme_mgmt_ap and APIs to
set and get the same through vdev.
Change-Id: Ib274b95be66e774b15f4687a02ed7fef6bf21056
CRs-Fixed: 3381401
Add dispatcher for function reg_get_num_rules_of_ap_pwr_type
to get the number of rules supported for given power mode
Change-Id: I084cc4e47ed16a71c1a8a7db4a6f046a0007a9d7
CRs-Fixed: 3378907
When the STA finds a candidate AP to connect to, it checks if the
primary 20 MHz channel is punctured or not. This validation is currently
done using scan channel parameters. The scan channel parameters are
intersected to the STA's capability and might not reflect the original EHT
OP IE parameters. For example, consider an 11ax STA in HE160 MHz mode
trying to connect to a 11be AP operating in EHT320 MHz mode. The scan
channel parameters are intersected to the STA's capability of 160 MHz.
The scan channel parameters like 320 MHz center frequency and puncturing
bitmap are inconsistent with the CCFS1 and punturing bitmap received in
the EHT OP IE.
So, instead of using the intersected scan channel parameters stored in the
STA to validate puncturing bitmap of the AP, use the EHT OP IE received
from the AP to validate puncturing bitmap.
Change-Id: I0cdc56eea96f04eb96327506bfd61c0f3a9109bb
CRs-Fixed: 3364639
The kernel-doc script has identified multiple documentation issues in
umac/cfr, so fix them.
Change-Id: Ie459075a92719e4708021cb965fdbab1f682df24
CRs-Fixed: 3372808
For a 320M bonded channel, if one of the subchannels is disabled due to
nol or static puncture, the return status becomes disabled. To correct
the status for the valid patterns, remember if at least one channel is DFS
and set the status to either DFS or enabled.
Change-Id: I4cac0afe29e6071e551c087b9d6e413b227eb18d
CRs-Fixed: 3369915
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
If country code for AP and STA are same and if STA does not
support VLP mode for a particular channel and if AP power
type is misconfigured to VLP mode, do not allow connection
to that AP as per regulatory guidelines.
Change-Id: Ie3bb980df25a15c4d9d7e566663e28950414f733
CRs-Fixed: 3362142
Enable channel 144 for JAPAN country by default. From regdomain
version 31, JAPAN is mapped to MKK17_MKKC instead of MKK5_MKKC. As per
the regdomain definition of MKK17, channel 144 must be enabled by
default. Only for MKK5 regdomain, channel 144 must be enabled based on
user config "setch144".
CRs-Fixed: 3375932
Change-Id: I48411f7f77ebbb9944dcf4988bb9ac22587e2074
Implement component APIs for existing vdev_mgr
to get bssid in DP component module.
Change-Id: If70832308028ad1965f4960bc2ba9664b7c09452
CRs-Fixed: 3351504
During link add, since the vdev would be down, it won't have scan
entries.
Hence, remove scan entry search from link add API
Change-Id: Ifd45b546124739e6c31b2a3691cdb90a3f624ecf
CRs-Fixed: 3377283
Use mac_addr pointer as constant in wlan_hdd_ml_sap_get_peer,
hdd_set_mld_address and use the same for consecutive APIs.
Change-Id: I19e07512bf09b01f26ef8b2bc3876f3d3e85ba2f
CRs-Fixed: 3374923
- To invoke the API wlan_send_tid_to_link_mapping from other
files, change its static definition and add a function
declaration.
- Remove repetitive logging of T2LM params in
wlan_mlo_parse_t2lm_info API.
- HMT STA host needs to send T2LM mapping info to FW only
on one peer instead of both peers in case of WKK.
Thus, add new API under MCC flag to address this issue.
The original changes will remain under else case.
Change-Id: I2495fddca7dc5da253a6d10ab41b70cf7f627156
CRs-Fixed: 3373326
- Replace T2LM array in wlan_t2lm_context structure with established_t2lm
and upcoming_t2lm structures
- Mapping switch time is different for each AP vdevs. Hence, store the
value in vdev_mlme_proto_ap structure.
- Fix a few issues seen in mapping switch time expiry and expected duration
expiry.
Change-Id: Id69badc3f4bf5e5e741691348488369008ffc4e9
CRs-Fixed: 3369279
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
In MLO scenario where start response for partner ML AP vdevs are
processed simultaneously on different CPU cores, the order in which
the vdev sm lock is acquired may lead to deadlock.
To fix add change to dispatch the MLO_SYNC_COMPLETE under mlo_dev_ctx.
Change-Id: I86ef51fcc8d51277163fcc5a6afdee6d873f2e63
CRs-Fixed: 3368033
Add API to check state of all mlo vdev to avoid roaming and disconnect
race issue.
Change-Id: Idc9a9a57f433aeff185fe78826faa84e08c09ddb
CRs-Fixed: 3372132
Add support for mlo groups in mlo soc/link setup and teardown
sequence participating in mlo.
Change-Id: I2b431b0ee1e5816b92ad183b52ad2998eb5bb46c
CRs-Fixed: 3343170
Non-assoc link might be superior in features compared to assoc
link and the per-STA profile info may carry corresponding IEs.
These IEs are extracted and added to IE list of link probe
response while generating it. So, the link probe response
generated from assoc link probe response might be of more size
than assoc link probe rsp. It's caller responsibility to allocate
buffer for the derived scan entry considering the copied IEs from
ML per STA profile.
Add a check to validate the available buffer while copying the
ML IE (as it's copied after deriving IEs from per STA profile) as
this is missing currently.
Change-Id: Ieafc9730ad098abb80fb1f3c14eb22b6b590ff20
CRs-Fixed: 3364159
Rx PN error stats for broadcast management frames is being tracked
as a ucast stats. Fix it to be tracked as part of mcast stats.
Change-Id: If76c512107728b792ed6d92d56036325592f0fd1
CRs-Fixed: 3361840
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
Use mac_addr pointer as constant in wlan_hdd_ml_sap_get_peer,
hdd_set_mld_address and use the same for consecutive APIs.
Change-Id: I3ab7b0f3c03e9175c62179029efb53fb9fe75277
CRs-Fixed: 3342115
When mlo_connect is posted, mlo_dev_ctx lock is acquired.
As part of which is CM is not in init state, disconnection is posted
before processing of connect request.
In disconnect, mlo_sta_vdev_list is fetched which internally takes the
same mlo_dev_ctx lock leading to deadlock
Add fix to avoid deadlock in back to back connect handling.
Change-Id: Ic88229a7709e11edc790fb66401bb0336d8a1e27
CRs-Fixed: 3365031
In case of ml_activate_pend_disconn_req_cb, mlo_disconnect is called
which validates disconnect request. If the disconnect was deferred due
to race in mlo connect notify event and disconnect received by mlo
manager, then ml_activate_pend_disconn_req_cb will end up in a deadloop
where it will always defer any disconnect due to above race.
Hence, add API with flag to validate disconnect request.
Change-Id: Ifa434a2f2f5e7a4d17d25349cb7ab86fa50ce043
CRs-Fixed: 3361387
In scenario where mbssid is enabled (is_mbssid_enabled) on STA ML VAP,
if ML STA is trying to assoc to Non-ML AP, on freeing AID at the STA
ml_ap_ctx is referred which is not set for STA vap leading to null
pointer access.
Check for validity of ml_ap_ctx before access.
Change-Id: Ib8b924cfc035c1e3aeeb5154ef6d736aee6ba077
CRs-Fixed: 3357392
In reg_compute_indoor_list_on_cc_change(), vdev
release is not needed if the vdev is not found.
Therefore, proceed with the loop instead of release
of the vdev reference.
Change-Id: I92c909d0f7e6e262e64e5d1dc01481dc452da194
CRs-Fixed: 3363892
In the driver, add support to get the Link information from a given
reconfig variant Multi-link element.
Change-Id: Ia23b26ddb4195da21c071ee5f3c198e0492ef952
CRs-Fixed: 3348524