Use the PPDU duration given by FW to find the end time
stamp of management frames.
CRs-Fixed: 3181500
Change-Id: Ibabe82c8e2d3cd7e494e764a9a2baeded89a7300
Add change to fetch and save the WMI service capability
bit of FW to support multi-client low latency feature
using service bit.
Change-Id: Ifce82c06fc913668949ed06634da1eebcea80397
CRs-Fixed: 3180932
Firmware advertises per candidate roam frame capability to
indicate:
1. Firmware sends auth/assoc frames for each candidate to
which roaming was attempted.
2. Fill the frame info TLV with authentication algo = 3
for authentication frames.
Add support for the roam per candidate frame info capability
Change-Id: I95c23031ab0fbc21fb9d8db3bd54004e4d1ac234
CRs-Fixed: 3172311
Assume AP1 and AP2 are SPMK APs. For SPMK AP(s), Host
should add an entry of an AP in PMK cache table like below in
two cases only:
Case 1. When DUT successfully associated with SPMK supported AP
In this case host update “is_spmk_ap” flag in PMK
table by parsing beacon of associated AP after
successful connection.
Case 2. When DUT successfully roamed to SPMK supported AP
In this case host update “is_spmk_ap” flag in PMK
table by parsing roam sync indication event.
In case of connection with SPMK AP, Host selectively deletes PMK
entry for other SPMK supported AP(s) on basis of “is_spmk_ap”
flag and maintains only one entry for all SPMK AP(s). And host
sends the same single PMK in RSO for further roaming to SPMK AP.
Initially, DUT is connected with AP2. Then Disconnection happens with
AP2 due to NUD failure. After disconnection, the upper layer sends
flush PMK requests for AP1 and AP2. Host deletes old PMK entries for
both APs. Now upper layer sends a set PMK request for AP2. Host adds
AP2 entry in PMK cache table but host does not set "is_spmk_ap" flag
in PMK table for this entry as DUT is not connected to AP2. Now host
receives a connect request for AP1 from the upper layer. DUT
successfully associated with AP1 by performing full SAE authentication.
Host adds an entry for AP1 in the PMK cache table and sets "is_spmk_ap"
flag for AP1 but fails to delete the entry for other SPMK AP(s), here
AP2, from PMK cache table. This is because of "is_spmk_ap" flag is not
set for AP2. At this point of time below is the PMK cache table entry
for SPMK AP(s): The Host PMK cache table has two entries for two SPMK
APs.
BSSID PMK is_spmk_ap flag
AP2 PMK2 0
AP1 PMK1 1
Now FW roams to AP2 using PMK1. Host process roam sync indication for
AP2 and updates "is_spmk_ap" flag for AP2 in the PMK cache table. As
Host has a stale entry for AP2 in the PMK cache table, Host sends AP2’s
PMK (here PMK2) in RSO command which firmware will use for further
roaming but roaming fails due to invalid PMK, as target SPMK AP expects
PMK1 in reassociation request.
To handle these scenarios, FW should send PMK info of roamed AP and
host override stale entry for roamed AP (if any) with roamed AP's PMK
in PMK cache table.
Change-Id: I3c6a49be065e4744e438c2762c103eb3095a2253
CRs-Fixed: 3168078
Initialize link id value in the reo params structure.
Link id is derived from the pdev object.
CRs-Fixed: 3166104
Change-Id: I444f5881690c3d48729f7232d6464bc9d1c4c892
Add following checks in the entry to management Rx REO algorithm entry.
1. REO parameter are valid
2. Frame type is management
CRs-Fixed: 3166096
Change-Id: I171fc51c1dfa948e32608aa3a1bb05fc6cb2197d
Return wait count as zero when all the frames of a given link are
processed by host SW. Also initialize the management packet counter of
host snapshot to 65535.
CRs-Fixed: 3166064
Change-Id: I88e757981e09640be93df8d3a583c6f14b2781b9
Enhance the debug framework used to log frames entering and exiting
management Rx reorder module.
CRs-Fixed: 3166029
Change-Id: I4594b0a0e383f243b4c1f0fe7b3894235463820f
Add support to get the status mgmt rx reo sim feature
cfg80211tool wifiX g_mgmt_rx_reo_simulation
Change-Id: Ia60cd25c0b044484b3e6a44ebc536ac1cf0c3804
CRs-Fixed: 3154130
For IGTK/BIGTK keyix, cipher table is not populated. Retrieve
cipher_type from key structure.
Change-Id: Ic61e66854f91317194ee90f64187fd2b787827b0
CRs-Fixed: 3163335
In ucfg_wlan_mgmt_rx_reo_sim_stop() when mgmt rx reo simulation
is in progress, wlan_mgmt_rx_reo_sim_start() is called
incorrectly instead of calling ucfg_wlan_mgmt_rx_reo_sim_stop().
Fix this by calling ucfg_wlan_mgmt_rx_reo_sim_stop() instead of
wlan_mgmt_rx_reo_sim_start() in ucfg_wlan_mgmt_rx_reo_sim_stop().
Change-Id: I906618fc87448cefae54bdcdf00c7f64217362fd
CRs-Fixed: 3154187
Add pdev open handler for management Rx reorder module.
This handler stores all the snapshot addresses to the pdev
private object of mgmt Rx REO module.
CRs-Fixed: 3111704
Change-Id: Iaf12b4edb568b2a32ff901ad5d0f0717b190906b
MLO HW link ids need not be continuous. Handle
discontinuous link id values at host.
CRs-Fixed: 3111570
Change-Id: I561cdabed8a6b621dba87c49832f5c1d1b194b9a
Validate the MLO HW link related info obtained from the global shared
memory arena of management Rx reorder feature.
CRs-Fixed: 3111549
Change-Id: I6fd7812dc49bfa8428b2ffbf66ae978592734bc0
Add support to set 11az ext feature flags
Read the firmware capability for 11az features and
advertise the corresponding wiphy flags.
Change-Id: I85f6cc2f65a5d9892830f66a726cffc823093bca
CRs-Fixed: 3150584
Print ref_id in all debug prints. It will make sure even if
string value is not added in string_from_dbg, there will be ref
id to debug leak issue.
Change-Id: If35a298239dd09cb4169474da34e30e85a2cde92
CRs-Fixed: 3147857
CLEAR_PARAM failed to clear bit at bit position of "val". This change
correct to ((__param) &= (~(1 << (__val)))).
Change-Id: I20a9203592c0f48c3d2999985edd8ff81f55eb9d
CRs-Fixed: 3137825
Add support to update key management with higher security
after BSS create response.
Also, Currenlty if there are multiple AKM and ucast cipher.
Host overwrites AKM and ucast cipher value with the new one.
Instead of overwrite, add support to do ORing to keep all values.
Change-Id: I679a86debef649efbce1a08b60512d127f7fbbee
CRs-Fixed: 3113222
Currently the TWT rx frames are dropped in
tgt_mgmt_txrx_rx_frame_handler considering them as unspecified
packets as action category for TWT is not defined.
Define TWT action category so that the TWT frames will not be
considered as unspecified frames and dropped while processing.
Change-Id: I2d9c01e89029bcbb379a5a9c77a7d101de155d6a
CRs-Fixed: 3087275
Move to qdf_debug API to avoid excessive logging.
As these logs can come in interrupt context, it can cause
latencies to other threads.
Change-Id: Ibcada15235a74e9534588ae08d21bf97f4d61393
CRs-Fixed: 3120558
Export objmgr APIs to be used by SON module to register
and unregister create/destroy handler.
Also add lmac_if API to register lmac_if ops from SON
module.
Change-Id: Id4c19807792b9f7b46387ae907f853151e4e28c6
CRs-Fixed: 3118986
Add APIs to defragment a sequence of 802.11 element/subelement
fragments. Add an inline mode to carry out the defragmentation within
the source buffer in order to reduce buffer requirements and to
eliminate memory copies/moves for the lead element/sublement.
Conversely, add a non-inline mode to copy the defragmented payload to
a separate buffer.
Add common helper functionality shared between these APIs.
CRs-Fixed: 3124132
Change-Id: Ia68584e918ddcf626b748f2b0c3a5da6492b40b6
For Quad-band IPQ9574 + 3 QCN9000 RDP, max number of SOCs
needs to be increased to 4 and another IPQ9574 RDP with QCN9224
might mostly have upto 4 PCI devices, hence increase the number
of max SOCs to 5.
Change-Id: Ie8a121c630bc41f084ca772a84503c816ed86514
Add an API to get the following information for a first 802.11 element
present in the beginning of a given buffer, and a series of elements
after it in the given buffer: a) Whether a contiguous subset of these
elements starting with the first element form an element fragment
sequence. b) If they form an element fragment sequence, then the total
length of this sequence inclusive of headers and payloads of all the
elements in the sequence. c) If they form an element fragment
sequence, then the total size of the payloads of all the elements in
the sequence (not including the element ID extension of the lead
element, if applicable).
Similarly, add an API to get the following information for a first
802.11 subelement present in the beginning of a given buffer, and a
series of subelements after it in the given buffer: a) Whether a
contiguous subset of these subelements starting with the first
subelement form a subelement fragment sequence. b) If they form a
subelement fragment sequence, then the total length of this sequence
inclusive of headers and payloads of all the subelements in the
sequence. c) If they form a subelement fragment sequence, then the
total size of the payloads of all the subelements in the sequence.
Add common helper functionality shared between these APIs.
CRs-Fixed: 3124120
Change-Id: I26d2d75670dbb99c927517181d58f4d816ae754b
Add an API to create a sequence of 802.11 element fragments, and
similarly, add an API to create a sequence of 802.11 subelement
fragments. Add an inline mode for both these APIs to carry out the
fragmentation within the source buffer in order to reduce buffer
requirements and to eliminate memory copies/moves for the lead
element/subelement. Conversely, add a non-inline mode to create the
fragment sequence in a separate buffer.
Add common helper functionality shared between these APIs.
CRs-Fixed: 3124099
Change-Id: I48ef6e529360ea40d58320327a50884bc1638689
Add an API to get information on requirements related to generation of
802.11 element fragment sequence. Currently this includes an
indication of whether fragmentation is required or not for the given
element ID and payload length, and if fragmentation is appplicable,
the minimum required size of the buffer where the element fragment
sequence created would be written.
Similarly, add an API to get information on requirements related to
generation of 802.11 subelement fragment sequence. Currently this
includes an indication of whether fragmentation is required or not for
the given payload length, and if fragmentation is appplicable, the
minimum required size of the buffer where the subelement fragment
sequence created would be written.
Create common helper functionality shared between the above APIs.
CRs-Fixed: 3124090
Change-Id: I7047e2117aae1a8856ee49c460f333914aa19a8b
Before MLO sta partner link is up, FW can't indicate CSA event to host.
For this case, host need save csa parameters and process it when MLO
sta partner link is up.
Change-Id: Id1803f32787002e020c6899ec72e428feb765b7f
CRs-Fixed: 3082438
Save quiet status of indicated link to sta contect of MLO mgr. Any link
should check quiet status of MLO connection, then decide whether it
can trigger inactivity to FW or not.
Change-Id: Ic294bbe6452030b6cae495ca0dd3e504416e2c9e
CRs-Fixed: 3117825
Add support to send Fils discovery template via target if
Add func to compute shortssid with the help of shortssid table
Change-Id: I78fa50641ee5ae0c338719c4cec91573a212f396
CRs-Fixed: 3114903