As per current design, dp_mlo_ctxt is allocated during the
initialization of module while the MLO grouping information is
understood after WMI_READY_EVENT. The same is deinitialized while
unregistering the module.
To ensure dp_mlo_ctxt exists per MLO group, bring the dp_handle
a layer below in the hierarchy into the mlo_setup_info and allocate
dp_mlo_ctxt after the WMI_READY_EVENT is received from all the SOCs
for a given group. Deallocate it after the WMI_MLO_TEARDOWN_COMPLETE
event is received.
CRs-Fixed: 3355405
Change-Id: Ic3102a34a8d44877827e2ff1f7da2e414b2b463f
To handle dp_mlo_ctxt assignments from the UMAC module,
moving the callers for attach and detach to the list of
MLO operations for multi chip.
CRs-Fixed: 3355400
Change-Id: Id743ec1086cf1b3ba0a3ec42212dc21c5a9ccc6b
Currently the FILS Discovery rx frames are dropped in
tgt_mgmt_txrx_rx_frame_handler considering them as unspecified
packets as action category for FILS Discovery is not defined.
Define FILS Discovery action category so that the FILS Discovery
will not be considered as unspecified frames and dropped while
processing.
Change-Id: I72398caf3cbb1f7d53d5f97da9d1997af2b33595
CRs-Fixed: 3346195
rx user status pointer is not valid
memzero ppdu_info before ppdu TLV processing and
Assign valid user status pointer from ppdu_info
user status before rtap update.
Change-Id: Ib9f8bf356a8d4710d295716cf88b8cf6a37158cb
CRs-Fixed: 3341380
The current field width for bandwidth parsed from
tx completion status is only 2-bits, which is not
sufficient for 320 MHz and 240 MHz, since these enum
values are 4 and 5 respectively, which needs a
minimum field width of 3-bits to store.
Increase the field width of bandwidth in the tx
completion status data structure to account for
320 MHz and 240 MHz enum values.
Change-Id: Ie108f31537607ab9ebf6510542b8967c0272e383
CRs-Fixed: 3359371
This change is to allow other modules to register for
link disablement.
It includes below functions:
1- Notify link update
2- Register to handler to get link update notification
3- Unregister T2LM handlers
Added the below changes as well,
- Move T2LM related data structures to wlan_mlo_t2lm.h file
- Host receives the expected duration from FW for multiple vdevs.
Hence, add support to extract the expected duration for multiple vdevs.
Change-Id: Ie8e77d5d3b4351a8551ecd7da50786b58dad3b2e
CRs-Fixed: 3346432
Wi-Fi Alliance specification for Automated Frequency Coordination (AFC)
system ensures that the Standard Power Wi-Fi devices can operate in 6
GHz spectrum under favorable conditions, without any interference with
the incumbent devices.
Add support for vendor command/events and corresponding
attributes to define the interface for exchanging AFC requests and
responses between the driver and a userspace application.
Change-Id: I8c894236cdb3a33f6eae5dd43879fc84f29a80dd
CRs-Fixed: 3337619
Currently the datapath stats do not print the
packet count for 320 MHz bandwidth.
Add support to print BW counters for 320 MHz.
Change-Id: Ic9579a1860e6aca442f7bc4a3b92930e8506e9bd
CRs-Fixed: 3359372
1. Change the names of parameters and functions related
to direct switch feature from ppe to ppeds
2. Remove the unused ppe_release_ring
Change-Id: I5a95b1273e338f354903af98158578ac65758a8a
CRs-Fixed: 3345097
The kernel-doc script identified a multitude of documentation issues
in hal_rx.h, so fix them.
Change-Id: I36913abcfea5504b1fdea2afb5c71810b08e4da6
CRs-Fixed: 3352421
Introduce new macro to support TX control port changes in
host driver with cfg80211.
Change-Id: I1f557c62e225ce019a6ce3174ad2d897b39e0147
CRs-Fixed: 3342945
Add a new subcommand QCA_NL80211_VENDOR_SUBCMD_DOZED_AP to configure
doze mode state on an AP interface. This is also used as an event to
indicate the updated configuration. In doze mode, AP transmits
beacons at higher beacon intervals and RX is disabled.
Uses attributes defined in enum qca_wlan_vendor_attr_dozed_ap.
Change-Id: I183140f0466eb7400cc161afb8c2e295ec587f93
CRs-Fixed: 3267855
Introduce ini gGAPLowBeaconMult for Low beacon
multiplier for Green AP low latency power save mode.
Change-Id: Ifc03e1acaf640bb55e0ae3465b38762f54f0eeea
CRs-Fixed: 3264938
Issue:
When DS mode is configured for a VAP
in both AP and STA (RDP 433), the tput reduces.
For instance, for an ingress of 7G
in standalone case, the egress rate is
1) 6887 Mbps when DS is enabled only in AP
2) 1900 Mbps when DS is enabled in both AP and STA
RCA:
With the help of debugs & proc/interrupts, identified
that we are not setting up the peer when the
device in STA mode due to AP mode check in
dp_soc_txrx_peer_setup.
Hence, the traffic is not flowing via DS
and so, tput reduces.
Fix:
Added changes to invoke txrx_peer_setup in
STA mode and DS mode will configured in that mode.
With the fix, traffic flows via DS, which
in turn improves the increased
Change-Id: Ib51e9a27e5078ed99160f213ddffed801c2e4ecf
CRs-Fixed: 3355603
Check size of the frag before passing
to trim function, which can lead to memory
corruption.
Change-Id: Icea102f9fef8c7333591337a93d32bc449704202
CRs-Fixed: 3354458
On every country change, the master channel list and
the current channel list is recomputed. Therefore,
recompute the indoor concurrency list on every country
change and update the list with STA interfaces operating
in the indoor channels of the new country.
Change-Id: Ia7f73820a054e0d89248f3408e2e71b2c1c41959
CRs-Fixed: 3345389
Program service code bypass to avoid
L2 new mac address learning exception
when fdb learning is disabled
Change-Id: I588a885aac1755cdf2ded5176b25d5ae9f533091
CRs-Fixed: 3354407
In the case of STA/CLI + STA/CLI, if an STA/CLI is in connecting state
and a disconnect is received on any other STA/CLI, the disconnect can
timeout waiting for the connection on the first STA/CLI to get completed.
This is because the connection is a blocking serialization command and
it can try multiple candidates and thus can take up to 30+ sec to
complete.
Same way if an SAP/GO has a start/stop command or peer disconnect in
pending queue, the delay is processing it can cause timeouts and other
issues.
So abort the next connection attempt if any of the vdev is waiting
for vdev operation to avoid timeouts.
Change-Id: I6570b8213c9008d8fea26febb49d0e40d9180d12
CRs-Fixed: 3354561
Requirement:
As part of serviceability for DS, display the number
of Tx descriptors currently in use by DS module
via “cfg80211tool athXX txrx_stats 260” like non-DS.
Snippet of log/code of Non-DS:
DP_PRINT_STATS("Tx Descriptors In Use = %u",
soc->stats.tx.desc_in_use);
Fix:
Introduced a new ops (dp_tx_ppe_ds_inuse_desc)
to display the current Tx desc in use.
dp_ppe_ds_inuse_desc API will be registered
to dp_tx_ppe_ds_inuse_desc in initialization
and it will be invoked from dp_print_soc_tx_stats API
to display the in_use desc via 260 command
Change-Id: I18971fc5d4cb5eb5437b012e3b89db7c9c2446b4
CRs-Fixed: 3352686
Fix below compile issues:
1.error: no previous prototype for wifi_pos_get_vdev_priv_obj()
and wifi_pos_get_psoc_priv_obj().
2. error: incompatible integer to pointer conversion assigning
to 'struct wifi_pos_vdev_priv_obj *' or 'struct wifi_pos_psoc_priv_obj *'
from 'int'.
3. error: declaration of 'struct wifi_pos_osif_ops' will not be visible
outside of wifi_pos_register_osif_callbacks();
Change-Id: I6946f6240ed5adff291871c75ca85f848d955f4d
CRs-Fixed: 3356150
In the PPE-DS UL path, the PPE-DS flag is getting set in the buffer
in the EDMA Tx complete path.
This flag is getting checked in the WLAN Rx replenish path and the
data invalidate is being skipped, if the flag is set.
CRs-Fixed: 3344458
Change-Id: I4e10deec5b373ccc93b59432576eb70d49a9304d
Add WMI interface(WMI_VDEV_SET_TWT_EDCA_PARAMS_CMDID) to
configure EDCA/PIFS param for LL SAP.
This configuration depends on edca_param_type.
If edca_param_type is 0 then host will configure EDCA param and
send it to firmware via WMI interface.
If edca_param_type is 0 then host will configure PIFS param and
send it to firmware via WMI interface.
Change-Id: I4f2e4120a258cc4a20aabeed503709aa2ceb8ec9
CRs-Fixed: 3349467
Host and FW have agreement about using fixed pdev id for CFR on HMT.
Since it's different to legacy chip for concurrency case or get pdev
id base band.
Change-Id: I2b16876244cf8988e8855752844917fbf0154f54
CRs-Fixed: 3312489
When a VDEV is dynamically getting added to an MLD,
WLAN_VDEV_OP_MLO_LINK_ADD op flag will be set on that VDEV during its
start_ap() sequence. Use that flag to update the mlo_link_add flag in
the VDEV_START WMI command.
CRs-Fixed: 3352057
Change-Id: Ie83a15f47d5cb4e54af410ebb68567694f38ccc7
To assist the Host in ML reconfiguration element construction for probe
responses, FW sends MLO link removal information as part of the MGMT Rx
event containing the corresponding probe request. This information is an
array of TLVs, one TLV for each link that is undergoing link removal from
the MLD for which this probe request is intended. The TLV carries the link
removal TBTT countdown value maintained by the FW for that link.
Add support to extract the same.
CRs-Fixed: 3335361
Change-Id: I16c6791a443ddb166da596d404a52ff2a38da291
WMI_MLO_LINK_REMOVAL_EVENTID will be sent by FW to update the Host on the
progress of the link removal operation. Add support to process this event.
Change-Id: I0c4d5b047cf062b421380f85717fac5a9bdea9c2
CRs-Fixed: 3334950
WMI_MLO_LINK_REMOVAL_EVENTID will be sent by FW to update the Host with the
progress of the link delete operation. Add support to extract the TBTT
update TLV sent in this event.
Change-Id: I01ce710d282f16e7a7cf4fb767279661558d129f
CRs-Fixed: 3322714
WMI_MLO_LINK_REMOVAL_EVENTID will be sent by FW to update the Host with the
progress of the link delete operation. Add support to extract the fixed
params TLV sent in this event.
Change-Id: Ic42a822339363b1347ae174926a4dac19eef3f99
CRs-Fixed: 3318005
WMI_MLO_LINK_REMOVAL_CMDID is to be sent by the Host to initiate the
removal procedure for a given link from its MLD. This command will be sent
on the impacted link only. Add support to populate and send this command.
Change-Id: I8485d8c8897bb2bb891d50546d5fbfac2a69a4ce
CRs-Fixed: 3314430
Fix the compile error: "declaration of 'struct wifi_pos_osif_ops'
will not be visible outside of wifi_pos_register_osif_callbacks"
when enable CONFIG_WIFI_POS_CONVERGED but disable the macro
WLAN_FEATURE_RTT_11AZ_SUPPORT.
Change-Id: Ib0043a109244d25368b7508b67b5b7b5c26cd3bf
CRs-Fixed: 3338198
One bad AP Multi-Link IE length is 5, have no MLD addr, BSS peer MLD
addr is set as zero, connect fails, and bss peer leak happens.
DUT STA can't connect other AP any more if bss peer leak happen 2 times.
At last, if wifi is disabled, vdev delete fails for ref count leak, assert
happens.
To fix it, validate AP ML IE length before parse it, if it's actual length
is less than expected length, set ML IE as NULL, downgrade the AP to legacy
mode.
Change-Id: I7d6b27f0816f3169c8802f67b64e5561ffdde6ed
CRs-Fixed: 3351189
For SAE-EXT-KEY AKM with group-21 pwe, the PMK
length is 64bytes. Therefore, increase the max
size of the PMK to 64bytes in host to facilitate
PMK storage and PMK offloads.
Change-Id: I049cd14c1c71e1809b394199862409780a16371d
CRs-Fixed: 3353114
Move the functions wmi_get_tlv_length_for_mlo_stats and
wmi_update_tlv_headers_for_mlo_stats defined under
WLAN_FEATURE_11BE_MLO inside the feature flag
FEATURE_CLUB_LL_STATS_AND_GET_STATION to avoid compilation failures.
Change-Id: I7c5a273797c692d2f0303dd547d2917c2261e8f7
CRs-Fixed: 3354430