Introduce new QDF API's to handle skb and net dev handling in
os abstract code.
Change-Id: If5a460df2c6c1b4068909fed6e5b3036623c2093
CRs-Fixed: 3164916
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
RSSI calibration parameters are received as part
of WMI event from FW, update these parameters to
monitor pdev via CDP interface.
Change-Id: I5060795918571763ad467aae93729040fbca96a1
CRs-Fixed: 3147897
packmode_fftbin_size_adj is used when the reported FFT bin length from
HW is twice the actual size. This issue is fixed in HW from Pine onwards.
So, don't use this WAR on QCA9574.
Change-Id: I43a4bcb6f238fac6a14c1f6459d7ad24a7a99b2d
CRs-Fixed: 3165085
Implement qdf support for netdev stats, so that
qdf macros will be used to handle netdev stats.
Change-Id: I7018fd81de8410080be03b3156ddcc941d1d180f
CRs-Fixed: 3165357
To calculate average delay for hist-stats, use the below
formula : new-avg = (current-avg + new-delay) / 2.
During accumulation of delay-stats for all the TID's for
a peer, only the hist-buckets with non-zero counts should
be considered for calculating the various delay levels.
Change-Id: Ic930116bd650baab6a2b43e077cf55f5c79681d5
CRs-Fixed: 3178032
In the case of ME6, Backhaul WDS, NAWDS
1. Send the igmp pkt on the same link where it received,
as these features will use peer based FW metadata.
2. Bypass the reinjection.
Change-Id: Idf0058e182257fbcedd8eb5fc8bcde945e8a91bc
CRs-Fixed: 3171558
When TX completion is released from FW, dp_tx_notify_completion()
will not be invoked, then TX DCHP ACK will miss
hdd_softap_notify_tx_compl_cbk() which then
WMI_PEER_CRIT_PROTO_HINT_ENABLED with value 0 will not send to FW.
(1) move dp_tx_notify_completion() from dp_tx_comp_process_desc_list()
to dp_tx_comp_process_tx_status(), so that both TX completion release
source FW or TQM case will call it.
(2) clear TX notify flag for intra-bss forwarding BC/MC to avoid
unnecessary TX completion notify.
(3) Set ts.status for release source FW case otherwise it will be value
0 always.
Change-Id: I2bf9900a3d16ba162a83b061f0b96e7d2f79423a
CRs-Fixed: 3178423
As dynamic allocation occupy cnss prealloc memory, which may
cause this prealloc pool to be exhausted.
Move dynamic memory to static.
Change-Id: Ia3500868cbcdbd9676f72a3588462ab0d6a21088
CRs-Fixed: 3171015
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
When RRI over DDR feature is not enabled,
the variable rri_over_ddr_cfg_valid goes uninitialzed.
This can lead to unpredictable behaviour.
Fix this by initializing pld_wlan_enable_cfg to zero
before use.
Change-Id: I485dc552201111834375411b9a493ddbf9a7505c
CRs-Fixed: 3176497
Check for mld peer id instead of link peer id in the case of
intra bss forwarding between MLO NAWDS repeaters
Change-Id: I7af7f43e7f88c95b0debee85c0976fdb9a1c5519
CRs-Fixed: 3142943
In order to reconstruct frame for MBSSID feature, per the description of
the Reduced Neighbor Report(RNR) element about MLD parameters subfield
in section 9.4.2.170 of Draft P802.11be_D1.4, the RNR IE is modified:
1\ If the reported AP is affiliated with the same MLD of the reporting AP,
the TBTT information is skipped;
2\ If the reported AP is affiliated with the same MLD of the nontransmitted
BSSID, the TBTT information is copied and the MLD ID is changed to 0.
Change-Id: Ibd4f2af28289bdb2f65c26966a92ea4df530fccb
CRs-Fixed: 3136398
Enable smart moniotr operations to add/delete
NAC clients and to get NAC client rssi value.
Change-Id: Ifc933d474da15101293cf3e1c07261917fb634f9
CRs-Fixed: 3169256
Add function to setup/reset lite monitor filters
whenever lite monitor mode is enabled/disabled
respectively through cmd line.
Also add function to configure rx header tlv dma length.
Change-Id: Ia5d8bc36e1d033b3e15737bb6b9854f6a7cdd5df
CRs-Fixed: 3143570
With new configuration changes for enable_peer_extended stats, update
code to peer_extended_stats naming for clean codebase.
Change-Id: I97a7ee331042232098382683fefebd05e6b099c3
CRs-Fixed: 3149920
For single link MLO connection, there is no partner peer creation,
so wlan_mlo_link_peer_attach is not triggered. wlan_mlo_peer_create
is good enough to trigger mlo_mlme_peer_assoc_resp.
Change-Id: Ia76503e146a07d15d7b263aa36f9e8c4d110fc6e
CRs-Fixed: 3168623
Add a check in qdf_minidump_log() and qdf_mindump_remove() so that
log types that are not allowed for minidump are not added to the minidump
table and also are not requested to be removed when they are not in the
minidump.
Change-Id: Id4cfdc0de1fc9baf40ae89ad5d3b3f9543df2805
CRs-Fixed: 3171812
Monitor 2.0 uses a msdu_queue (75K memory), which
is currently enabled for monitor_1.0 as well.
Add this memory under Monitor_2.0 feature, so that
there is no memory increase for monitor_1.0.
Change-Id: If0f3701787585ec2b2efde018287101919a77570
CRs-Fixed: 3176254
In Beryllium architecture, PPDU_START_USER_INFO TLV carries
the user specific info for each user in a given ppdu.
Add subscription for this TLV by host for enhanced stats use case.
Change-Id: Ia12c5c3ab36198e7cd40dad0c0d92b945d2b49c6
CRs-Fixed: 3166305
Change puncture_pattern to puncture_bitmap in peer_assoc_params.
As FW required, do the bit inversion for puncture bitmap in peer assoc,
then pass it to FW.
Change-Id: If96358aa9cc639555835ca1a1412d7893b16dbd7
CRs-Fixed: 3124854
Change puncture_pattern to puncture_bitmap in mlme_channel_param.
As FW required, Do the bit inversion of puncture bitmap for vdev
start params, then send it to FW.
Change-Id: Ia0d95c014cf2c1dabc6c18b6b329b7a372bcb8ee
CRs-Fixed: 3124841
a. For decapped frames, convert frames from 802.3 t 802.11
b. for non-decapped frames no conversion is needed
c. Apply radiotap header and deliver MPDU to osif layer
CRs-Fixed: 3074441
Change-Id: Ia03b4bad35d69aa292958782cd424f3df56dabbc
Initialize link id value in the reo params structure.
Link id is derived from the pdev object.
CRs-Fixed: 3166104
Change-Id: I444f5881690c3d48729f7232d6464bc9d1c4c892
To program Vlan-pcp to TID mapping in hw
register, tid no is passed in place of
pcp value to the hal-layer.Fix this by passing
the pcp value correctly to the hal API.
Change-Id: Ib3bdeffc8dbaa7c5f47406316178206b2eec2c18
CRs-Fixed: 3172024
dp_peer hold the peer ref_cnt outside of dp_tx_notify_completion()
already, so dp_vdev can not be freed during that period if dp_peer
exist, it's not necessary that hold dp tx_desc pool lock in
dp_tx_notify_completion() which will introduce lock contention with
TX/TX Comp path.
Remove tx_desc pool lock to optimize it.
Change-Id: I5fdb9143bbc0800db74f8595f77c5a2c96d8e7d6
CRs-Fixed: 3170805
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
Previously elna_bypass is of type bool, which check for
elna_bypass enabled or disabled with en_dis variable
Change en_dis to elna_mode of enum extlna_mode
to support extra mode of firmware_default
Change-Id: I99fba1e69c1b9a68024b266ec63b3d6be29f83e0
CRs-Fixed: 3169270
The datatype of resp_id in
wmi_afc_power_event_param is 32 bit.
Change the datatype of resp_id from
uint8_t to uint32_t
in the structure reg_fw_afc_power_event,
to write
QCA_WLAN_VENDOR_ATTR_AFC_POWER_EVT_RESP_ID
in the
QCA_WLAN_VENDOR_AFC_POWER_UPDATE_COMPLETE_EVENT
Change-Id: I910921908ddc24290e2b89732fa223a16aeb9981
CRs-Fixed: 3159542
Replace slave for target, and replace
master for initiator which pair of slave.
Change-Id: I51ee0ce1ce0d0dc30281388a270bda1edfac2903
CRs-Fixed: 3169180