Fix incompatible function pointer assignment.
Define a wrapper around mc timer callbacks to
make them compatible with standard scheduler
message callback function signatures.
Change-Id: I07829680d1758ccbd53e8b1fe10b0e30e100a2c6
CRs-Fixed: 3305719
Currently, this MLO flag is being set/clear without regard for
concurrency. We need to lock the vdev when updating these values to
prevent race condition.
Change-Id: Ied90d62f10f6f12a35eeac3060dd0fae7d0c6cfd
CRs-Fixed: 3305558
The RX REO functionality has numerous misspellings of "forwarded",
including multiple identifiers. Fix these to use the correct spelling.
Change-Id: Idc4e66e7356b978742fea30ae7ef0c9498c4f938
CRs-Fixed: 3313839
In wlan_crypto_global_api.c there are several functions which use a
misspelled term for "nonce" so replace them with the correct spelling.
Change-Id: Iedc65bbad173c5fc398e25730853bc7b36e86b31
CRs-Fixed: 3313801
Add ACTION_OUI_11BE_OUI_ALLOW enum to support new WMI action
oui type WMI_VENDOR_OUI_ACTION_ALLOW_11BE.
Add scan entry to candidate validation struct.
Change-Id: I502a246584cd5ee6b4759d8fbb67629628314560
CRs-Fixed: 3301859
Move the QCN attributes enum to common code to keep a sync
between FW and Host values.
Change-Id: I0e4da33781c9e5230b6b309942cdc672c707d29f
CRs-Fixed: 3307120
For STA MLO connection, the AP can send M1 right after assoc
response on assoc link, which will trigger sending keys to FW
for mlo links, but it can happen that wmi_peer_assoc is not
sent for mlo link until this time.
Current code does not have handling for this case.
To solve this, store the link vdev keys and send them once
link vdev is connected.
Change-Id: I882da96280711ca9cfa4d6ba852fda4a8b6d7a77
CRs-Fixed: 3293692
During wlan_crypto_setkey, the mem_alloc for key is done and
all keyidx within WLAN_CRYPTO_MAX_VLANKEYIX are to freed in
crypto_free_key.
Change-Id: Ieae0f9f4eecabe1fb23812a9e436037bb4dad128
CRs-Fixed: 3296394
Enhance serialization logging by adding vdev id info in logs to
differentiate same cmd id across vdevs.
Change-Id: I6706b07044769b56832e67388924f767ad5aabfe
CRs-Fixed: 3297468
Add the following definitions related to the Reconfiguration variant
Multi Link element:
- Fixed fields of Per-STA Profile subelement in Reconfiguration
variant Multi-Link element Link Info field.
- Definitions related to STA Control field of Per-STA Profile
subelement in Reconfiguration variant Multi-Link element Link Info
field.
- Definitions related to STA Info field of Per-STA Profile subelement
in Reconfiguration variant Multi-Link element Link Info field.
Change-Id: I4f5a06a60461f37f6a45bf4c15f203980c0e22b9
CRs-Fixed: 3296891
Add the following definitions related to the Reconfiguration variant
Multi Link element:
- Encoding for Reconfiguration variant in the Type subfield in
Multi-Link element Control field. (Additionally for completeness, add
the missing encodings for TDLS and Priority Access variants for this
subfield).
- Definitions for bits in the Presence Bitmap subfield in
Reconfiguration variant Multi-Link element Control field.
- Definitions related to Reconfiguration variant Multi-Link element
Common Info field.
Change-Id: Ie5f89438533f372cd020831a0de0fdafac94d6af
CRs-Fixed: 3296867
Use def_tx_keyid for Mcast wep key.
Also reset all the key index in wlan_crypto_free_key once igtk,
bigtk and Ucast/Mcast are freed, so that their values are not
carried to next connection.
Change-Id: I9a1e8715c54f47905889511f983b3127b9b5cfcd
CRs-Fixed: 3297270
For a particular vdev, If one of such same CMD id
is needed to be cancelled, either
wlan_ser_cancel_scan_cmd() is called if cmd is scan
cmd or wlan_ser_cancel_non_scan_cmd() is called if
cmd is non-scan cmd.
For both the cases, currently cmd_id is iterated
among pdev serialization cmd queue and if cmd_id
is matched then that particular id is flushed.
Since in per vdev cmd_id, same ids can be assigned
across multiple vdevs and it may be possible that in
the pdev serialization cmd queue, different vdev can
enqueue the same cmd id.
Hence, with current condition that only checks for
cmd_id may result in incorrectly cancelling the
same cmd_id for different vdev.
To prevent this, along with checking for cmd id
and type, check for the valid vdev and remove
the cmd corresponding to that vdev only
Change-Id: I10d37588a52e8d3209c7521782716e2358e57079
CRs-Fixed: 3295516
Bss peer can be NULL in case of vdev in disconnected state,
so change the log level from error to debug in
wlan_vdev_get_bss_peer_mac() to reduce logging in dmesg.
Change-Id: Idac08200253d83f267be3381691e10d6bd4b52bf
CRs-Fixed: 3293402
Current code directly passes the result of wlan_vdev_get_psoc(vdev) to
wlan_objmgr_get_peer_by_mac, without null pointer checking, which can
result in null pointer dereferencing.
To fix this issue, add checking of the psoc pointer before passing,
and add verification inside wlan_objmgr_get_peer_by_mac.
Change-Id: Iaf0e2535c3a584db788ddc621745c66c296fe08f
CRs-Fixed: 3277651
Handle the following error scenarios in management Rx REO module.
1. Pdev corresponding to a HW link is deleted.
2. Pdev corresponding to a HW link not yet initialized completely.
CRs-Fixed: 3272812
Change-Id: I34fbb19e24649371ff0ddb591e2ec14bfdfee58a
CH_WIDTH_320MHZ definition is in 11BE define currently and it's
causing duplicate code in 11BE supported/unsupported cases.
Definition need not be in 11BE define as it doesn't cause any
impact on memory.
Change-Id: I996aad941bef33eef6527c4c34c5b9efd75d9b84
CRs-Fixed: 3246577
Avoid code duplication by using common definitions
i.e use enum wlan_ml_linfo_subelementid.
Change-Id: Ia09c1a42207461878d023e8f4534f2d26fb2f81b
CRs-Fixed: 3227859
6 GHz SAP needs to send either a probe response or fils
discovery at configured interval. These in band
discovery frames can be disabled when lower band vdevs
are collocated with 6 GHz vdevs.
FILS disabled when lower band vdevs were up.
After vdev up send if WLAN_VDEV_FEXT_FILS_DISC_6G_SAP
is not set, host sending FILS command to enable 20TU.
Either driver or user not enabled 20TU probe response,
Host did not send the 20TU PRB RESP TMPL before sending
20TU PRB RESP enable command resulted Target assert.
Fixed this issue by adding 20TU vdev feature flag
and add appropriate check before sending command
to enable 20TU probe response.
Change-Id: Icb0ea5ef40b1fe2dd2dc6b97dc079ab7780e8cfc
CRs-Fixed: 3244471
Update wait count as per the following formula.
new wait count = min(old wait count - packet counter delta, 0)
CRs-Fixed: 3261649
Change-Id: Ie5b2055e41518a87543b52c18c366f42291b8093
Currently the FTM rx frames are dropped in
tgt_mgmt_txrx_rx_frame_handler considering them as unspecified
packets as action category for FTM is not defined.
Define FTM action category so that the FTM frames will not be
considered as unspecified frames and dropped while processing.
Change-Id: Ieb3980978e38b3f826f42380e29798767c8f1fe2
CRs-Fixed: 3254409
Currently, RSNXE capability indexes are defined incorrect.
It seems BIT index is misinterpreted. Correct the same as defined
below in spec(IEEE Std 802.11-2020, 9.4.2.241, Table 9-780).
The Extended RSN Capabilities field, except its first 4 bits, is a
bit field indicating the extended RSN capabilities being advertised
by the STA transmitting the element. The length of the Extended
RSN Capabilities field is a variable n, in octets, as indicated by
the first 4 bits in the field.
Also, add a macro to check if the given akm
is WPA/WPA2 i.e. legacy than WPA3.
Change-Id: I3d8eee15f6734b2364628f699b7829a1edb246f0
CRs-Fixed: 3257715
Shorten the strings in error prints in the helper that carries out
802.11 element/subelement defragmentation. This is in order to
decrease the size of the modules generated as required for some
platforms.
Change-Id: Idd37ea59467aa5ebc3928f336f05b603e5d7f6f5
CRs-Fixed: 3248821
Shorten the strings in error prints in the helper that determines
802.11 element/subelement fragment sequence information. This is in
order to decrease the size of the modules generated as required for
some platforms.
Change-Id: I5a15dc12404399c4670e0cb29205a728715f4923
CRs-Fixed: 3248813
Shorten the strings in error prints in the helper that determines
802.11 element/subelement successor fragments. This is in order to
decrease the size of the modules generated as required for some
platforms.
Change-Id: I4457e1228f848a52f9eea056541806220ff4e8da
CRs-Fixed: 3248806
Firmware advertises WMI_SERVICE_DELETE_ALL_PEER_SUPPORT
capability to indicate vdev peer delete all command support.
PASN peer relies on the WMI_VDEV_DELETE_ALL_PEER_CMDID
command to delete the PASN peers before vdev delete.
So allow PASN peer create only on targets that advertise
WMI_SERVICE_DELETE_ALL_PEER_SUPPORT.
Change-Id: Ib94d9e14e34dd1e5c25bf6946e0d59fe83fd6dd3
CRs-Fixed: 3229438
Select best candidate by mlo score algorithm.
Check bss mlo type first by mlo info, mlo config, partner frequency and
dbs/sbs cap, calculate candidate score for SLO/MLMR/EMLSR bss types.
For SLO case, same as before except:
Decrease percent of legacy band and nss to include 320M and 8x8.
Decrease max percent of congestion from 100 to 80 to include MLMR joint
congestion.
Increase weight of both band width and nss to 20.
For EMLSR case, same as SLO except adding EMLSR boost score.
For MLMR case, besides adding MLMR boost score,
calculate joint RSSI/band width/congestion score for combination of
scan entry + each partner link by new mlo algorithm, select partner with
highest total joint score as candidate combination, only activate that
partner link.
Change-Id: I640c6825d945caf5fab504a77717195c2eac0c93
CRs-Fixed: 3234912
Set 11az Ranging related extended capabilities over the
wiphy extended capabilities. Mask these fields for SAP iface
Change-Id: Ib6ce92f42d7125b4e9532d5c893ffe955be0f0dc
CRs-Fixed: 3235143
Rate-limiting will be based on number of beacons received.
When the beacon is not from connected AP, the beacons
are dropped on a percentage of received beacons and
rate limit, which is configured by the user.
CRs-Fixed: 3230508
Change-Id: Iac591c37129fda6923ef254c2950cb0bdbb44ce9
During ML IE fragmentaion, the inline copy should account for
increase in size due to difference in destination and source.
This avoids corrupting the buffer beyond the max allowed size.
CRs-Fixed: 3236544
Change-Id: I8114c15accb70fa0c92ee51453dd112875bd09d5